WordPress

WordPress开发人员和管理员的问答


5
setup_postdata()似乎不起作用?
我不确定为什么,但是我曾经get_posts()查询过一些数据。然后我用了setup_postdata()...我想用了它,这样我就可以the_permalink()在新的发布数据中使用诸如etc之类的功能? <?php foreach ($childPosts as $cp) : setup_postdata($cp); ?> <article <?php post_class() ?> id="post-<?php the_ID(); ?>"> <h1><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h1> <?php if (has_post_thumbnail()) : ?> <a href="<?php the_permalink() ?>"><?php the_post_thumbnail(($hasOutputNotFeaturedDiv) ? 'thumb-small' : null) ?></a> <?php endif; ?> <?php the_excerpt(); ?> <p class="more"><a href="<?php the_permalink() ?>">Read more ...</a></p> …
12 get-posts 

7
WP REST API:按类别1和类别2过滤
我一直在干预REST API,并且对此深信不疑:如何过滤cat1和cat2中的帖子? 现在,?categories[]=45&categories[]=50返回类别ID 45或50的退货-如何获得45和50的帖子? 提前致谢。

4
更改媒体项目永久链接
我有一个永久链接为domain.com/books的图像,现在我想在此永久链接上找到一个页面。 有没有办法改变图片的固定链接? 谢谢
12 permalinks 

4
使用wpdb的get_results
我正在尝试检索数据库中的信息。我想pages使用此语句显示所有内容,但我空白ARRAY global $wpdb; $result = $wpdb->get_results ( " SELECT * FROM $wpdb->wp_posts WHERE post_type = 'page' " ); echo $result; // display data 输出: ARRAY 编辑:更改以下建议后,我现在正在使用它。但我仍然没有得到任何结果: global $wpdb; $posts = $wpdb->wp_posts; $result = $wpdb->get_results( " SELECT * FROM $posts WHERE 'post_type' = 'page' " ); foreach ($result as $page) { …
12 database  query  wpdb 

3
在初始化过滤器或操作中获取$ post?
似乎$ post仅可用于在特定时间执行的钩子。我有一个“ init”钩子,需要使用$ post-> ID从数据库中提取一些数据。 到目前为止,我唯一的解决方法是在the_content上添加另一个过滤器,该过滤器使用$ post获取我需要的信息。不幸的是,它也将返回值回显到屏幕上,而无法将其实际返回给最初调用过滤器的函数。 这是提取所需数据的代码,但是回显并无法返回值: add_filter('the_content', 'get_keyword'); function get_keyword() { global $post; $keyword = get_post_meta( $post->ID, '_wpg_def_keyword', true ); return $keyword; } 有没有人对如何获得我所需的任何建议,并将其传递回调用函数以供以后在插件中使用? 编辑:为了更清楚一点,我在init上运行了一个筛选器,该筛选器需要能够从数据库中检索有关当前帖子的信息。为此,它需要访问$ post-> ID。但这在init中是不可能的,那么如何获得所需的结果? 谢谢, 乔纳森 解决了: 原来答案只是使用url_to_postid像这样: $keyword = get_post_meta( url_to_postid( "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] ), '_wpg_def_keyword', true ); 即使从init完美工作。
12 hooks 

5
如何使用Xdebug调试插件?
我能够在本地环境中基于PHP 5.3.0(XAMPP)轻松安装和设置NetBeans 6.9.1和Xdebug。 现在的问题是:如果在Wordpress的index.php或其他Wordpress核心PHP文件上设置断点,则NetBeans会正确停在所需位置。相反,如果我在插件文件上放置一个断点,则触发代码执行的NetBeans不会在那里停止。 您知道如何解决吗? 更新:有关我要调试的更多信息 该插件称为Vanilla论坛,具有以下文件结构: - plugins - vanilla-forums + assets + nbproject + templates admin.php embed.php functions.php hooks.php plugin.php sso.php widgets.php 我在vf_validate_options定义的名为函数中设置了断点functions.php。我确定该函数已执行,但是NetBeans不会在此中断。

4
如何知道与add_action()一起使用的优先级?
我正在编写一个小插件,以从后端删除非管理员用户的某些菜单项,并发现除非我在代码中指定了优先级,否则插件不会执行任何操作: add_action('admin_bar_menu', 'remove_toolbar_items', 999); 没有999,代码不会删除我remove_toolbar_items函数中的项,并且它可以很好地工作: function remove_toolbar_items( $wp_admin_bar ) { if ( !current_user_can( 'manage_options' ) ) { $wp_admin_bar->remove_node('new-post'); $wp_admin_bar->remove_node('comments'); } } 优先级参数状态的文档: 用于指定执行与特定操作关联的功能的顺序。较小的数字表示较早的执行,并且具有相同优先级的功能按照将它们添加到操作中的顺序执行。默认值:10 但是,我找不到任何可以解释您如何确定要使用的优先级的内容。您如何确定何时使用优先级以及使用什么优先级?如果我没有玩弄priority参数的话,我觉得我可能已经花了好几个小时了。 另外,我看到默认优先级为10,但是优先级值的范围是否已知?
12 actions 

4
将WordPress移至新服务器,现在尝试下载文件
首先,我将数十个网站从一台服务器迁移到另一台服务器,没有问题。 我最近移动了一个网站,当访问URL时,没有扩展名且仅1KB文件大小的名为“ download”的文件会自动下载。我备份了所有文件,并使用四种不同的方法下载了数据库,以确保:BackWPup,BackUpWordPress,并手动压缩文件并通过FTP下载文件。 原始网站可以在原始服务器上完美运行。 我使用了转移到新服务器时一直使用的方法。 在新服务器上: 创建新的数据库,用户并导入数据库 上传文件并解压缩 使用新的数据库名称,用户名和密码编辑wp-config.php 使用WordPress Codex中的functions.php方法更改网站URL,在此处-http://codex.wordpress.org/Changing_The_Site_URL 我还应该提到,我将站点上传到了三台不同的服务器(包括原始服务器上的一个子域),所有结果都是相同的。 除了上述方法外,我还尝试了以下方法来解决问题: 更改了“ plugins”文件夹名称,以查看是否是导致错误的插件 更改了活动主题文件夹的名称,以查看主题是否引起了错误 在wp-conig.php中将WP_DEBUG更改为“ true”-但是该站点永远不会加载,因此不会显示任何错误。 当前,错误的网站位于-http://cgdev.webworksplayground.com/ 谢谢您的帮助。
12 migration  server 

6
将版本号分配给子主题的主样式表
在header.php中,我想将版本号归于样式表,以便浏览器被迫刷新它。但是在处理子主题时,不会明确调用其样式表,而是由WordPress自动查找。那么如何或在何处将版本号归属于子主题的样式表?
12 child-theme  css 

2
重置默认角色和功能
我一直很难在角色中添加自定义帖子类型功能(向默认角色中添加功能),我怀疑周围的混乱可能导致了一些问题。我还安装和卸载了各种插件,其中一些插件增加了功能。结果,我的WP角色对象有些混乱。有谁知道重置功能的方法,还是我需要全新安装?

8
如何在wordpress中添加style.css版本
style.css我可以在Joomla中像下面这样在WordPress中添加版本。 <link rel="stylesheet" href="/templates/example/css/style.css?v=1.2"> 我知道style.css会动态加载。请帮助我该怎么做。
12 themes  css 

3
如何从任何位置包括wp-load.php?
我有一个插件,可通过插件内的jQuery.ajax()脚本调用独立的php脚本(myAjax.php)。 我需要将以下代码放入myAjax.php文件中: require_once('../../../wp-load.php'); if (!is_user_logged_in()){ die("You Must Be Logged In to Access This"); } if( ! current_user_can('edit_files')) { die("Sorry you are not authorized to access this file"); } 但是,如果实际的相对路径与我的示例不同,我想使用一种更加防弹的方法来指定wp-load.php的路径。

4
是否可以覆盖get_template_part()的结果?
我正在研究一个子主题,我强烈不希望覆盖主模板文件,以保持子主题的简单性,并尽可能减少代码量和维护时间。 在循环中,父主题中的index.php模板使用: get_template_part( 'content' ); 它将引入content.php,我希望它的行为更相似get_template_part( 'content', get_post_format() );或相似,以便引入不同的模板,例如content-aside.php等,而不在子主题中创建index.php来覆盖父级进行单行更改。 get_template_part() 由组成: function get_template_part( $slug, $name = null ) { do_action( "get_template_part_{$slug}", $slug, $name ); $templates = array(); $name = (string) $name; if ( '' !== $name ) $templates[] = "{$slug}-{$name}.php"; $templates[] = "{$slug}.php"; locate_template($templates, true, false); } 所以有一个动作,在我的例子中叫做 get_template_part_content 我可以使用以下类似的动作: …

2
如何使用插件将子菜单添加到wp_nav_menu生成的菜单中
我有一个菜单wp_nav_menu看起来像 <ul class="nav-menu" id="menu-top-nav"> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-43" id="menu-item-43"><a href="http://www.example.com/item1.com">Item 1</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-44" id="menu-item-44"><a href="http://www.example.com/item2.com">Item 2</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-45" id="menu-item-45"><a href="http://www.example.com/item3.com">Item 3</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-46" id="menu-item-46"><a href="http://www.example.com/item4.com">Item 4</a></li> </ul> 我想通过使用插件将子菜单添加到“项目3”来修改以上菜单,因此下面是我想要的输出。 <ul class="nav-menu" id="menu-top-nav"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-43" id="menu-item-43"><a href="http://www.example.com/item1.com">Item 1</a></li> <li class="menu-item …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.