wordpress博客页面geting自定义领域的第一篇文章

时间:2013-04-27 05:14:04

标签: wordpress custom-fields posts

我面临着一个糟糕的问题。如果有人可以帮我解决我的问题,我将不胜感激。

我在帖子和页面上使用自定义字段,就像删除页面导航,页脚,补充工具栏,ETC一样。当我在我最近添加的帖子(在博客页面上显示的第一篇文章)上使用自定义字段时,例如我从最近添加的帖子中删除导航它还会从博客页面中删除所有帖子都列出的导航。

我从Jquery .remove()中删除所有元素,并在页脚中添加所有这些代码

如何处理这个问题如果我在自定义字段中最近添加的帖子中做了任何更改,我不希望在博客页面上进行任何更改。

<?php
   global $post;
   if(get_post_meta($post->ID, '_remove_topnavigation', true)=='yes'): ?>

   jQuery('#branding #navigation').remove();

<?php else : ?>

 //Do nothing

<?php  endif; ?>  

2 个答案:

答案 0 :(得分:0)

您应该发布页面代码,或者至少发布一个链接,因为您的问题不在于使用custom fields,而在于您正在使用的选择器。

而不是使用#branding #navigation,它们可能(可能)由您的其他导航共享(虽然它们是ID,但在这个世界中,不好的主题编码器并不罕见)。

所以解决方案要么是隔离&amp; amp;更好地识别选择器,或者在最近添加的帖子中添加另一个选择器(类)。

如果你已经包含了页面源代码,那就更容易了。

答案 1 :(得分:0)

您正在尝试错误地混合服务器端和客户端代码。您的服务器端PHP代码需要做的是在JavaScript代码(通过JQuery)需要删除的任何内容上添加一些“标记”(可能是类属性)。然后,您的JavaScript代码需要查找该标记,然后将其删除。

因此,if语句的主体需要在输出任何HTML块(可能是nobrandnav)时设置一个类属性(让我们称之为“div”)。您的JavaScript代码需要从:

开始
jquery(".nobrandnav").
  find(whatever navigation is needed to find your branding).
  remove();