Edited at

【WordPress】サイドバーのリンクリストを固定ページとして作成する

More than 5 years have passed since last update.

リンク一覧などのパーツを固定ページとして作成して、それをサイドウィジェットで表示する方法です。

少し回りくどい方法ではありますが、サイト管理者ができるだけ簡単にコンテンツの更新をするために、固定ページで編集できるこの手法を選びました。


ウィジェットを作成する

functions.phpに以下のように追記し、ウィジェットを追加します


functions.php

if(function_exists('register_sidebars')) {

register_sidebars(4, array('name' => 'サイドウィジェット%d'));
}

【WordPress】複数のサイドウィジェットを定義する


PHP Codeプラグインをインストール

テキストウィジェットにphpコードを書くことができるようになります。

PHP Code Widget


PHPCodeを使ってウィジェットの中にコードを埋め込む

ウィジェットに[PHP Code]を追加し、以下のように書き込みます。

<?php

$page_id = 00;//数字は表示する固定ページのID
$page = get_post($page_id, 'OBJECT', 'raw'); //ページの情報をOBJECT形式で受け取る
echo apply_filters('the_content', $page->post_content); //ページの本文をフィルターフックで整形して出力
?>


表示したいところでdynamic_sidebar()を呼び出す

<?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar(4)): ?>

<p>ウィジェットの作成に失敗しました</p>
<?php endif; ?>