我试图了解这个WordPress插件的一部分代码:https://wordpress.org/plugins/menu-items-visibility-control/。我不明白的第一件事就是输入的价值标签:value="<?php echo esc_html( get_post_meta( $item_id, '_menu_item_visibility', true ) ); ?>"
有人可以解释这里发生了什么吗?变量&#39; _menu_item_visibility&#39;是用户输入的WP条件标记,除非标记的计算结果为true,否则菜单项将被隐藏。我也很好奇这个输入没有方法标签。
function option( $item_id, $item, $depth, $args ) { ?>
<p class="field-visibility description description-wide">
<label for="edit-menu-item-visibility-<?php echo $item_id; ?>">
<?php _e('Visibility') ?>:
<input type="text" class="widefat code" id="edit-menu-item-visibility-<?php echo $item_id ?>" name="menu-item-visibility[<?php echo $item_id; ?>]" value="<?php echo esc_html( get_post_meta( $item_id, '_menu_item_visibility', true ) ); ?>" />
</label>
</p>
&#13;
答案 0 :(得分:0)
wordpress菜单项也会发布并存储在帖子类型为nav_menu_item
的wp_posts表中,_menu_item_visibility
是wp_postmeta
下的帖子元保存,可能是由特定导航菜单上指定的插件创建的item,其值似乎为false或true,
插件只是从_menu_item_visibility
表中提取/添加wp_postmeta
post meta的值,然后根据该值创建条件