解密WordPress插件

时间:2016-02-07 14:53:04

标签: php wordpress wordpress-plugin

我试图了解这个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,否则菜单项将被隐藏。我也很好奇这个输入没有方法标签。

&#13;
&#13;
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;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

wordpress菜单项也会发布并存储在帖子类型为nav_menu_item的wp_posts表中,_menu_item_visibilitywp_postmeta下的帖子元保存,可能是由特定导航菜单上指定的插件创建的item,其值似乎为false或true,

插件只是从_menu_item_visibility表中提取/添加wp_postmeta post meta的值,然后根据该值创建条件