Event Organiserのカスタム☆

Event Organiserのカスタム☆

最近、ブックマークなんかしていたページが、次に見に行くともうないってことが多かったので自分のブログにもメモさせてもらいたいと思います。
元は こちらです。
webooooo 様

Event Organiser ワードプレスでイベントサイトを作れるプラグイン


Event Organiser ワードプレスでイベントサイトを作れるプラグイン

Event Organiser

ワードプレスでイベントサイトを作る場合、「Event Organiser」というプラグインがおすすめです。

このプラグインの備忘録を公開します。

カスタマイズするファイルは以下のファイルです。

イベントアーカイブ: archive-event.php
イベントページ: single-event.php
会場ページ: taxonomy-event-venue.php
イベントカテゴリページ: taxonomy-event-category.php

テーマカスタマイズ↑ 対象のファイルをテーマフォルダ直下に入れるとOK

——————————————————————————-
ショートコードのカスタマイズ
shortcode-event-list.php を テーマフォルダ直下に入れるとOK

ヘルプ
http://docs.wp-event-organiser.com/shortcodes/

更新ルール

◆複数日にわたり、イベントがある場合
・開始日と終了日は同じ日付にする
・繰り返し:カスタム
・繰り返し追加/削除 日付を表示 で複数日選択すること

◆エラーと思った現象 カテゴリーをクリックしてから一覧が表示されなくなった
設定→「過去のイベントを表示する」のチェックが外れていた

◆ファイル構造
カレンダーの日付押した時のデザイン
archive-event.php

◆ショートコード(本文中に指定)
カレンダーを表示
[eo_calendar]

イベント一覧を表示
[eo_events event_start_before=”now”]

今月のイベントを表示
[eo_events event_start_after=”first day of this month” event_end_before=”last day of this month”]

先月のイベントを表示
[eo_events event_start_after=”first day of -1 month” event_end_before=”last day of -1 month”]

◆eo_eventsの使い方
[eo_events numberposts=5]  イベントを5件表示
[eo_events event_start_before=”引数”] 引数より前の開始イベントを表示 (過去)
[eo_events event_start_after=”引数”] 引数より後の開始イベントを表示(未来)
[eo_events event_end_before=”引数”] 引数より前の終了イベントを表示 (過去)
[eo_events event_end_after=”引数”] 引数より後の終了イベントを表示(未来)
[eo_events ondate=””] 特定日に開始するイベントを表示 

◆引き数
tomorrow
today
now
+1 week
+2 week
+1 month
third Thursday of this month
last Monday
first day of this month
last day of this month

◆PHP 変数のデータの型を調べる

◆イベントカテゴリーページの 昇順と降順
event-organiser-archives.php
538行

ASC⇒DESC

ORDER BY 列名 ASC  指定した項目を昇順でソートする
ORDER BY 列名 DESC 指定した項目を降順でソートする

昇順: JISコード順に従って並べ替える
数値:1→9
アルファベット:A→Z
かな:あ→ん
日付:古い順

降順: JISコードの逆順に並べ替える
数値:9→1
アルファベット:Z→A
かな:ん→あ
日付:新しい順

これがやりたかった。WPでアイキャッチがなかったら一枚目の画像を表示

http://appofit.com/wordpress/template-wp/postimg-wp/

APPOFIT > WordPress > WordPressテンプレートカスタマイズ > 記事に含まれる1枚目の画像を抽出する

私の古いサイトには、初期の頃の投稿記事にはアイキャッチが全くなくて、でもほぼ写真は記事内にあるので一覧や検索結果に
「アイキャッチがあったら、アイキャッチを表示、
アイキャッチがなかったら投稿の中の1枚目画像を表示、
それもなかったら画像なしのno-image.pngか何かを表示させる」
というのがやりたくて、こちらのサイトを見てできた!

ふぅ、素晴らしいな。

function getPostImage($mypost, $size = 'MEDIUM'){
	if(empty($mypost)){ return(null); }
	
	if(has_post_thumbnail($mypost->ID)){
		// アイキャッチ画像を設定済みの場合
		$file_id = get_post_thumbnail_id($mypost->ID);
	}else{
		// アイキャッチが設定されていない場合
		$files = get_children(array('post_parent' => $mypost->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image'));
		if(is_array($files) && count($files) != 0){
			$files = array_reverse($files);
			$file  = array_shift($files);
			if(is_object($file) && isset($file->ID)) $file_id = $file->ID;
		}
	}
	
	if(isset($file_id) && !empty($file_id)){
		// アイキャッチまたは添付されているファイルIDが取得できている場合(altは記事タイトルを使う)
		if(!empty($size)) $res_temp = wp_get_attachment_image_src($file_id, $size);
			else $res_temp = wp_get_attachment_image_src($file_id);
		
		if(is_array($res_temp)){
			$resultArray = array(
				"url"    => $res_temp[0],
				"alt"    => $mypost->post_title
			);
		}
	}
	
	if(!isset($resultArray) || empty($resultArray)){
		// ここまでで画像が取得できていない場合は、記事本文中からimgタグを拾う
		if(preg_match('/<img([ ]+)([^>]*)src=["|']([^"|^']+)["|']([^>]*)>/',$mypost->post_content,$img_array)){
			$resultArray["url"] = $img_array[3];

			// ALTを取得
			preg_match('/alt=["|']([^"|^']+)["|']/',$img_array[0],$alt_array);
			if(!empty($alt_array)) $resultArray["alt"] = $alt_array[1];
				else $resultArray["alt"] = $mypost->post_title;
		}
	}
	
	// ここまで来ても取得できていなければnullを返す
	if(!isset($resultArray)) $resultArray = null;
	
	return($resultArray);
}

Sublime Text3

{
“close_windows_when_empty”: false,
“color_scheme”: “Packages/Color Scheme – Default/Solarized (Light).tmTheme”,
“draw_white_space”: “all”,
“fallback_encoding”: “UTF-8”,
“font_size”: 12,
“tab_size”: 2,
“translate_tabs_to_spaces”: true,
“highlight_line”: true,
“ignored_packages”:
[
“Vintage”
],
“overlay_scroll_bars”: “disabled”,
“remember_open_files”: false,
“rulers”:
[
0,
200
],
“show_encoding”: true,
“show_line_endings”: true,
“trim_trailing_white_space_on_save”: true,
“word_wrap”: false
}