有条件地在页面模板中的内容之前显示不同的图像

时间:2014-11-26 作者:user1448031

一些页面共享一个通用模板。每个页面都需要在主内容区域上方放置不同的图像。我该怎么做?

图像需要显示在可编辑区域(即所见即所得编辑器)上方,因为图像需要从左向右延伸。

编辑:

我正在考虑在我的模板代码中执行以下操作。我正在使用一个特定的模板插件,它还允许我在图像中添加特定的标记,以便我可以以不同的方式设置图像的样式。让我知道以下方法是否合适,或者是否有更好的方法来处理此问题,而不必将页面ID直接硬编码到模板中?

if(is_page(10)) {
  echo do_shortcode(\'[plugin_shortcode 1 .....]\');
} else if (is_page(11)) {
  echo do_shortcode(\'[plugin_shortcode 2 .....]\');
} else if (is_page(15)) {
  echo do_shortcode(\'[plugin_shortcode 3 .....]\');
}

1 个回复
SO网友:Brad Dalton

您可以尝试loop\\u start挂钩,具体取决于您想要图像的位置,并在函数文件中使用代码。

add_action(\'loop_start\', function() {
if(is_page(10)) {
  echo do_shortcode(\'[plugin_shortcode 1 .....]\');
} else if (is_page(11)) {
  echo do_shortcode(\'[plugin_shortcode 2 .....]\');
} else if (is_page(15)) {
  echo do_shortcode(\'[plugin_shortcode 3 .....]\');
}});
或者,您可以从图像文件夹中提取图像,并将每个图像包装在一个唯一的类中。

add_action(\'loop_start\', function() {
if(is_page(10)) {
   echo \'<img class="image-one"><img src="\' . get_stylesheet_directory_uri() . \'/images/one.png" /></img>\'; 
} else if (is_page(11)) {
   echo \'<img class="image-two"><img src="\' . get_stylesheet_directory_uri() . \'/images/two.png" /></img>\'; 
} else if (is_page(15)) {
   echo \'<img class="image-three"><img src="\' . get_stylesheet_directory_uri() . \'/images/three.png" /></img>\'; 
}});
或者将图像硬编码到模板文件中。

结束

相关推荐

1 post, 2 templates

我想能够呈现两种不同的风格(2个模板)后。例如,假设我有post ID 133,我希望有两个url来访问它,因此它会呈现不同模板应用的位置。洛雷姆。com/render1/133。com/render2/1333,例如。。。或者可能是这样的:洛雷姆。com/post/133和lorem。com/post/133?模板=2您将如何操作?