根据菜单项ID更改图像

时间:2011-06-09 作者:dzulfriday

我的客户要求放置标题图像,但根据单击的菜单,图像必须是唯一的。

假设我有两个菜单。第一个是A,第二个是B。当我将菜单悬停在菜单面板上时,我可以知道菜单id。假设第一个菜单id是36,第二个是37。

我的问题是如何根据菜单项id更改标题图像?

1 个回复
SO网友:mike23

如果您的标题图像是背景图像,您可以在每个页面上使用CSS进行更改,这要归功于body_class();

你的<body> 标记应如下所示:

 <body <?php body_class(); ?> >
然后,当您访问每个页面时,您会在代码中注意到各种类被添加到body标记中。然后,您可以轻松地调整CSS以针对任何页面上的任何元素。例如:

.page-id-96 #header{ background-image:url(myimage.png); }

UPDATE

您还可以将页面ID传递给图像代码,例如,如果图像必须位于页眉上方,则在WP循环之外:

<img src="http://www.mywebsite.com/img/banner_<?php global $wp_query; echo $wp_query->post->ID; ?>.jpg" alt="" />
使用此代码,Wordpress将查找根据页面ID命名的图像。如果您在第页ID=23 例如,它将加载banner_23.jpg. 因此,你只需相应地命名不同的横幅。

另一个解决方案是使用individual page templates.

结束

相关推荐

Menu API not switching menus?

我正在使用菜单API,我想切换到其他菜单,但出于某种原因,它保留了第一个菜单这是我的密码在函数中。php add_action( \'init\', \'register_my_menus\',10 ); function register_my_menus() { register_nav_menu(\'main-navigation\', \'Main Navigation\'); } 下面是我的主题文件(header.ph