coments_template(”,true);
で
コメントテンプレートの読み出しをする
もし、テンプレが作成されていないなら
wordpress 本体の
コメントテンプレが適用される
この場合は、デフォルトのコメント欄表示になる
第一引数の” へコメントテンプレのファイル名を書く
これを省略した場合には
comments.php になる
第2引数には
true ならコメントを分けて表示する
false ならわけて表示しない
あと、特定のカテゴリ内か判断する
in_category()
とか、個別投稿記事か判断する
is_single()
のようなテンプレタグをif とかで条件分岐させて
表示する内容を制御するということもできる
これについては
wordpress codex 日本語版 条件分岐タグ
が参考になる
wordpress 関数メモ(RSS関連)
th_feed_link()
RSSフィードへのリンクを出力するテンプレタグ
引数にはリンク文字列を渡す
if(is_category(‘column’) || (is_single() && in_categry(‘column’))):
でコラム カテゴリ内か否か判断する
get_ctegory_feed_link()
カテゴリを限定したRSSフィードのURLを取得する
引数はカテゴリのID
カテゴリIDは
get_category_by_slug(‘column’)->term_id
で取得
ソースコードを見直すときに使える diffコマンド
新しくプログラミングを勉強する時に
ソースコードがあるなら
もし、稼働しないときには
diff コマンドで比較すると
違いに気づけます
今回、
get_template_directory_uri()
とするところを
get_template_directory_url()
となっていました
ソースはダウンロードしていたので
diff sidebar.php ~/ダウンロード/source/sidebar.php
とすることで違いを比較し
間違いに気づきました
ソースのコピペだけだとどこが間違っていたのかが
わかりにくいので
一度比較して、間違いさがししたほうが勉強には効率的です
wordpress 抜粋文を入力可能にする
標準の状態では無理なので
add_post_type_support(‘page’,’excerpt’);
を追記する
add_post_type_support()
は投稿タイプ別に追加機能の設定をする関数
page
は固定ページ
excerpt
は追加機能に抜粋を指定している
関数をまとめて記述しているファイルに追記したら
次にダッシュボードの固定ページ一覧の記事を表示して
表示オプションで抜粋へチェックをいれれば
抜粋文が使えるようになる
wordpress 投稿関連のメモ
previous_post_link()
next_post_link()
は
前後の記事への『リンクを出力するためのテンプレタグ
%link
でフォーマットを通常に指定
%title
でリンクテキストをページのタイトルに指定
true
で前後記事を同一カテゴリの記事に限定する
excerpt_more フィルターフックで
抜粋文の最後につく文字列を変更できる
excerpt_mblenghtフィルターフックで
文字数を
WP Multibyte Patch 標準の110文字から
120文字から変更できる
wordpress 検索関連のメモ
the_search_query()
で検索ワードを出力
if(have_posts() && get_search_query()):
で
検索機能と検索キーワードがともに存在するか否か
チェックする
while(have_posts()):
で
wordpress ループを実行し、
検索結果おページャーを出力
if(isset($_GET[‘s’]) && $_GET[‘s’] == false)
これで
検索キーワードが未入力か否か
0か否かを判断する
この場合
add_action()で
template_redirect アクションフックへ
search_template_redirect()
を登録する
template_redirect アクションフックは
wordpress によるページ種別ごとのテンプレが選択される
直前のタイミングで実行される
search_template_redirect()の中の
$wp_query()
は、Wordpress の内部データを保存するオブジェクト
search.php をテンプレとして選択した際に
正しく動作するように
wp_queryのプロパティを一部書き換えてから
search.php をテンプレとして読み込む
php のソースの ?> がないことについて
PHPのリファレンスとか
サンプルソースで
?>
が書いていないソースコードのファイルがありますが
これはミスではありません
PHPの閉じタグの
?>
は
ここでPHPが終わってHTMLに切り替わることを意味します
なので、PHPのコードのみのファイルとか
関数を記述しているファイルの場合
?>
が存在しないことがあります
逆に
<?php
は
PHP開始を意味しますが
これをつけていないとHTMLと認識されてしまうため
PHPファイルの場合、こちらを省略することはできませんので注意が必要です
ページャーを出力するプラグイン
WordPress では
Prime Strategy Page Navi
というプラグインを使うことで
簡単にページャー設定ができます
まず、ページャーのプラグインである
Prime Strategy Page Navi
を有効にします
ダッシュボード > プラグイン >
インストール済みのプラグインの中から
Prime Strategy Page Navi
を探して有効化します
そして
page_navi()でページャーを出力します
ちなみに
page_navi() も
プラグインが定義するテンプレートタグ
ソースを記述するときには
プラグインが有効でない場合を考慮して
function_exists()
でチェックしておく
パラメータの
edge_type=span
で
1ぺーじおよび最終ページで前後ページへのリンク
最初と最後ページへのリンクの表示方法を指定する
none だと表示しない
span だとリンクなしで表示
link だとリンクつきで表示
となる
ちなみにデフォルトでは none になっている
コードの追記と設定ができたら
管理画面のダッシュボードへいって
設定 > 表示設定 で
1ページに表示する最大件数を
少なくすればページャーの設定が反映される
wordpress 関数メモと参考サイト
the_author_posts_link()
作成者名の表示
作成者別の一覧ページのリンクを出力する
is_author()
作成者別一覧ページか否か判断する
get_query_var(‘author’)
ユーザID取得
display_nameと取得したユーザIDを
パラメータにして
get_the_author_meta()
へ私
ユーザのブログ上の表示名を取得
is_single()
投稿か調べる
the_time()
投稿時刻を出力
the_author_posts_link()
作成者名の表示と
作成者別一覧ページのリンクを出力
関数に関しては
wordpress 私的マニュアル
が参考になります
wordpress の権限とグループ
通常は
管理者
編集者
担当者
寄稿者
購読者
となり、
マルチサイト機能を有効化すると
マルチサイトを管理できる
所有管理者というものもある
管理者は、名前のとおり
waordpress のすべての機能にアクセスできる
root みたいなかんじ
編集者は、記事の管理はすべてできるけど
管理画面で
プラグインの追加とか
ユーザ関連
設定などの権限はない
投稿者とか寄稿者とか、下に向かうにつれて
権限も縮小される
なんか、会社みたいだけど….
投稿者になると
記事の投稿のみの管理になり
寄稿者になると
自分は記事を書いても公開できない
購読者なんて
自分のプロフィールしか操作できない