メニュー詳細
- 著者:管理人
- 固定ページ公開日:2024年4月16日
- 記事の最終変更日:2024年8月25日
CSS
ダッシュボード>外観>カスタマイズ>追加CSSや、Scripts n Styles(プラグイン)等でコピペして使用します。
/*ドロップダウンメニュー幅変更*/
.dropdown-menu li .sub-menu li.menu-item {
width: 185px;
}
/*ドロップダウンメニューで親が空の場合のカーソル変更*/
li#menu-item-169,li#menu-item-287,li#menu-item-1960 {
cursor: context-menu;
}
/*モバイルでのドロップダウンメニューで、サブメニューをインデントして階層明示*/
@media(max-width:959px){
ul.sub-menu {
padding-left: 20px;
}
}
/*モバイル時のハンバーガーアイコンの位置調整*/
a.mobile-menu {
bottom: 1px;
position: relative;
}
/*カスタムメニューからのショートコード記述で、ラベル分スペースを削除(プラグインShortcode in Menus3.5.1使用時且つ「ダッシュボード>外観>メニュー」のタブに表示されない時)*/
li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-1826 a:first-child,li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-1888 a:first-child,li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-1889 a:first-child {
display: none !important;
}
PHP追加(直上CSSとセット)
プラグインShortcode in Menus3.5.1を使用してメニューに追加するための、指定した投稿記事を取得するショートコードを生成します。該当記事が無い場合はメニューでも非表示となります。
Shortcode in Menus3.5.1は、「ダッシュボード>外観>メニュー」タブに表示されていなくても生きているようです。URLに「#」、ナビゲーションラベルにショートコードを記述して、メニューに追加します。メニューに追加完了後は#を消去可能です。
PHPは、①ダッシュボード>外観>テーマファイルエディター>テーマのための関数(functions.php)や②「子テーマ」のテーマのための関数(functions.php)に追記するか、③Code Snippets(プラグイン)等でコピペして使用します。①はテーマの更新で消失します。②③は更新の影響を受けません。
// 最新の投稿を取得するショートコード
function latest_post_link_shortcode() {
$latest_post = get_posts(array(
'numberposts' => 1, // 最新の投稿1件のみを取得
));
if ($latest_post) {
$latest_post_id = $latest_post[0]->ID;
$latest_post_title = $latest_post[0]->post_title;
$latest_post_permalink = get_permalink($latest_post_id);
return '最新の記事';
}
return ''; // 最新の投稿が見つからない場合は空の文字列を返す
}
add_shortcode('latest_post_link', 'latest_post_link_shortcode');
// 現在表示している記事の、ひとつ前の記事を取得するショートコード
function prev_post_link_shortcode() {
// 現在のページがブログ記事ページかどうかをチェック
if (is_singular('post')) {
$prev_post = get_previous_post();
} else {
// ブログ記事ページでない場合、何もしない(メニューも非表示)
$prev_post = null;
}
$output = '';
if ($prev_post) {
$output .= 'ひとつ前の記事(古)';
} else {
// ひとつ前の記事がない場合、何もしない(メニューも非表示)
return '';
}
return $output;
}
add_shortcode('prev_post_link', 'prev_post_link_shortcode');
// 現在表示している記事の、ひとつ後の記事を取得するショートコード
function next_post_link_shortcode() {
// 現在のページがブログ記事ページかどうかをチェック
if (is_singular('post')) {
$next_post = get_next_post();
} else {
// ブログ記事ページでない場合、何もしない(メニューも非表示)
$next_post = null;
}
$output = '';
if ($next_post) {
$output .= 'ひとつ後の記事(新)';
} else {
// ひとつ後の記事がない場合、何もしない(メニューも非表示)
return '';
}
return $output;
}
add_shortcode('next_post_link', 'next_post_link_shortcode');
最近のコメント