Questions tagged «plugins»

插件是扩展WordPress功能的工具。此标签不应用于标记对插件建议的请求,这些请求在FAQ中是不合时宜的。

4
当未达到某个WP版本时,在激活过程中停止插件,然后在admin_notices操作钩中显示错误消息
我有一个插件,如果它不符合某个WP版本号,则不希望被激活,然后在admin_notices操作钩中显示错误消息。据我研究,以下代码是我可以达到的最好的代码: $wp_version = get_bloginfo('version'); if ( $wp_version < 4.5 ) { add_action( 'admin_init', 'deactivate_plugin_now' ); add_action( 'admin_notices', 'errormsg' ) ); } public function deactivate_plugin_now() { if ( is_plugin_active('myplugin/myplugin.php') ) { deactivate_plugins('myplugin/myplugin.php'); } } public function errormsg () { $class = 'notice notice-error'; $message = __( 'Error you did not meet …

3
引用插件目录的最佳实践
我的插件使用以下代码引用文件,但WP_PLUGIN_DIR如果用户重命名默认插件文件夹,则无法读取。我还想替换/location-specific-menu-items/为对当前插件文件夹的引用。 $gi = geoip_open(WP_PLUGIN_DIR ."/location-specific-menu-items/GeoIP.dat", GEOIP_STANDARD); 无论WP插件目录和特定插件文件夹的名称如何,我如何都可以重写它以使其工作? 编辑: 这是每个人的输入后我最终的工作解决方案。非常感谢! $GeoIPv4_file = plugin_dir_path( __FILE__ ) . 'data/GeoIPv4.dat'; $GeoIPv6_file = plugin_dir_path( __FILE__ ) . 'data/GeoIPv6.dat'; if (!filter_var($ip_address, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) === FALSE) { if ( is_readable ( $GeoIPv4_file ) ) { $gi = geoip_open( $GeoIPv4_file, GEOIP_STANDARD ); $user_country = geoip_country_code_by_addr($gi, $ip_address); geoip_close($gi); } …

3
如何替换在functions.php中的插件类内部声明的函数?
我想修改插件中的功能。像这样在插件的主文件中声明: class WCPGSK_Main { ... public function wcpgsk_email_after_order_table($order) { ... } } 像这样从那里添加呼叫: add_action( 'woocommerce_email_after_order_table', array($this, 'wcpgsk_email_after_order_table') ); 我想如果可以访问functions.php中的类,就可以替换它。然后,我将可以编写如下内容: $wcpgsk = new WCPGSK_Main; remove_action( 'woocommerce_email_after_order_table', array($wcpgsk, 'wcpgsk_email_after_order_table') ); function customized_wcpgsk_email_after_order_table($order) { ... } add_action( 'woocommerce_email_after_order_table', array($wcpgsk, 'customized_wcpgsk_email_after_order_table') ); 我想获得对functions.php文件中类的访问权限的想法是包括在functions.php中声明该类的文件: require_once('/wp-content/plugins/woocommerce-poor-guys-swiss-knife/woocommerce-poor-guys-swiss-knife.php'); $wcpgsk = new WCPGSK_Main; ... 但这是行不通的,因为我猜想在WordPress中初始化插件时会包含该插件的文件。 有没有一种方法可以重写功能而不接触插件的文件?

2
如何判断插件是否兼容多站点?
作为WordPress管理员新手,我刚刚经历了我的第一个非自动WordPress升级。 我将五种不同的WordPress安装从4.1.3升级到了4.2。 它们都引用作为一个主域和四个附加域托管在同一Web主机上的不同网站。 在每个网站上,我使用以下插件: Akismet; Yoast的Google Analytics(分析); 谷歌的AdSense; Google XML Sitemaps和 WordPress.com的Jetpack。 为了简化进一步的管理,我考虑将所有五个安装合并到一个多站点安装中。 到目前为止,我发现很难找到有关每个插件与插件网站上的多站点安装的兼容性的明确答案。 插件页面是搜索此内容的正确位置吗? 是否可以在中央位置找到此信息?

3
插件升级:小部件设置
我尝试对此进行一些研究,但尚未发现任何可靠的方法。我有一个正在使用的插件,在上一个版本和新版本之间,我们对小部件进行了一些更新,以更改某些设置名称(在后端),并且在创建升级例程来执行此操作时遇到了麻烦。 到目前为止,我所做的似乎(大部分)工作是这样的: $widget = get_option( 'widget_name' ); if( is_array( $widget ) && ! empty( $widget ) ) { foreach( $widget as $a => $b ) { if( ! is_array( $b ) ) { continue; } foreach( $b as $k => $v ) { $widget[$a]['setting1'] = $widget[$a]['oldsetting1']; $widget[$a]['setting2'] = $widget[$a]['oldsetting2']; } …

2
在包装内容之外重新定位WooCommerce面包屑
我目前在WooCommerce插件的函数文件中有此代码。 function my_theme_wrapper_start() { echo the_breadcrumb(); echo '<section role="main"><div class="wrap">'; } function my_theme_wrapper_end() { echo '</div></section>'; } function mytheme_prepare_woocommerce_wrappers() { remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10 ); remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10); add_action( 'woocommerce_before_main_content', 'my_theme_wrapper_start', 10 ); add_action( 'woocommerce_after_main_content', 'my_theme_wrapper_end', 10 ); } add_action( 'wp_head', 'mytheme_prepare_woocommerce_wrappers' ); add_theme_support( 'woocommerce' ); 现在,我想将WooCommerce面包屑重新定位在section.main类之外,但是我看不到如何做到这一点。有没有办法做到这一点? 这是我为WooCommerce面包屑编写的代码... function …
9 php  plugins 

1
WooCommerce:列出所有类别
我将WooCommerce插件与WordPress结合使用,并且在我的主题中,我想使用PHP在导航菜单中列出所有类别。 我试过使用 woocommerce_product_categories(); 但是我不想要图像或其他HTML元素,而只是它们的名称(也许还有永久链接)。 我如何获得这些数据?

3
WooCommerce商店页面使用我的自定义模板
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为WordPress Development Stack Exchange 的主题。 5年前关闭。 在提出问题之前,我想告诉您,我已经在/programming/15025213/wordpress-woocommerce-template-file-overiding中提出了问题 我正在使用WooCommerce插件开发网站。WooCommerce一切都很好。根据我的要求,我已经从WooCommerce仪表板将主页配置为商店基础页面,以使我的主页成为商店页面。现在,我的要求是放置一些应从管理端上传的图像,并在图像上显示一些文本。对于该功能,我在G​​oogle上进行了搜索,有人建议我使用WordPress Advanced Custom Fields。我刚刚安装了它。 现在,我看到WooCommerce没有使用我的自定义主题。它使用自己的自定义主题。因为我想使用“ 高级自定义字段”插件显示图像和文本,所以我确实需要自己的自定义模板来使用对图像和文本的查询。然后,我再次在Google上搜索了解决方案,并得到了建议,只需将主题的副本复制page.php到其中woocommerce.php,然后替换代码即可: <?php while ( have_posts() ) : the_post(); ?> <?php get_template_part( 'content', 'page' ); ?> <?php comments_template( '', true ); ?> <?php endwhile; // end of the loop. ?> 与 <?php woocommerce_content(); ?> 我这样做了,但仍然没有从“高级自定义字段”中获取我的自定义字段。所以请帮助我。任何建议和帮助将不胜感激。谢谢。 我的代码用于显示图像和文本的高级自定义字段,如下所示: <?php …

7
WooCommerce商店,提供约30,000种商品[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为WordPress Development Stack Exchange 的主题。 5年前关闭。 我正在研究WooCommerce作为一种潜在的电子商务解决方案,但是我最关心的(我一直无法找到相关信息)是产品的数量。 拟议的商店需要具有容纳30,000种不同产品的能力。 WooCommerce可以处理的产品数量是否有技术限制? 限制是否与我可以安全/切实地在WordPress中处理的帖子数量相同? 还有其他问题会使管理这样的事情变成一个坏主意吗?(WooCommerce的经验)
9 plugins 

1
插件的目录必须如何构成?
我得到了基本的插件概念。我已经阅读了有关编写插件的Codex文章 那篇文章讨论了“主插件文件”。 Wordpress如何确定“主插件文件”? 问题1: 拥有这样结构的插件是否合法/是否受支持: 插件名称/ pluginname / mainfile.php pluginname / supportingcode-1.php pluginname / supportingcode-2.php pluginname / Readme.txt 等等.. ? 问题2: 如果是这样,wordpress如何确定哪个php文件是主插件文件? 我看到了一些建议,例如“我以这种方式构造代码”: 插件名称/ pluginname / mainfile.php 插件名称/inc/supportingcode-1.php 插件名称/inc/supportingcode-2.php pluginname / Readme.txt 等等.. 问题3:当PHP代码跨越多个模块时, 是否需要使用子目录(inc/如上例所示)? Q4: 是的,在主插件目录中最多应该有一个php文件吗? 谢谢。

4
从该插件调用单个函数时,如何不使用php条件语句而使wp主题中需要插件?
我的Wordpress主题之一需要一些第三方插件才能正确运行。 大多数时候,我曾经使用条件语句从第三方插件调用函数 if(function_exist('plugin_function')) { plugin_function() // do something } 假设尽管我需要通过主题的多个文件广泛使用一个插件...我想避免使用许多IF条件...是否有适当的方法要求将某些特定的插件安装在WP中,甚至更好地安装它们如果在激活主题之前缺少它们? 谢谢

4
更新后如何保持插件翻译?
http://wordpress.org/extend/plugins/bbpress/ bbpress的语言文件夹(wp-content / plugins / bbpress / bbp-languages)发出以下警告: /** * Do not put custom translations here. They will be deleted on bbPress updates. * * Keep custom bbPress translations in /wp-content/languages/ */ 实际上,这不是一个新问题,是的,它们是正确的。如果您使用非英语语言的wordpress插件,这将是一个大问题。 基本上我翻译了bbpress并创建了.po和.mo文件。如果我将它们放在其正常的wp-content / plugins / bbpress / bbp-languages文件夹中,文件将起作用。但是如上警告说更新时将删除。但是问题是,如果我按照bbpress的建议将它们放在wp-content / languages /文件夹中,则翻译不起作用。 我认为必须有一个钩子或可以激活它的东西,但是什么是最好的解决方案?我只是想将插件语言文件保留在wp-content / languages /中

3
如何为每个用户设置后端语言?
我想在后端使用英语界面,但是我想将其设置为本地语言以供编辑使用。我知道WPML具有此功能,但我不想仅出于这个原因安装不受支持的WPML。 我正在寻找的是一个很小的插件,该插件为用户个人资料页面提供了一个用于设置后端语言的开关盒。有这样的插件吗?

4
在WordPress中使用外部API?
我有一个拥有WordPress网站的客户,他想扩展它以添加新功能。这些功能已包含在我已经完成的网站中(一种基于数据库的搜索引擎,带有一些过滤器),并且该网站具有新的增强功能。 我计划要做的是创建网站的json api(所有搜索功能都在数据库中),并使wordpress网站使用此api,然后只需要创建视图即可显示搜索结果。 问题是我完全不了解WordPress(对我来说,您可以在其中通过管理面板添加文章...),而且我不知道我们如何在其中编写自己的服务器端代码。我已经在Google上进行搜索,发现了一个名为“插件”的东西,但我想知道是否可以这样做,并且这是否是最简单的方法,因为我不需要其他任何人使用的代码派对。如果可以破解WordPress的安装来添加我的PHP文件,对我需要的代码进行编码(我的视图具有相同的WordPress CSS),这会更简单,但我不知道是否可能?

5
从个人API更新插件
目前,我正在开发Wordpress插件,而我不想在Wordpress插件存储库中使用。但是,我仍然希望能够从自己的API存储库向我的客户推送更新。 我已经阅读了很多有关此内容的内容,其中似乎有一件事是pre_set_site_transient_update_plugins过滤器,但是我找不到太多有关此的信息。我已经尝试了本教程(http://konstruktors.com/blog/wordpress/2538-automatic-updates-for-plugins-and-themes-hosted-outside-wordpress-extend/),但是该教程无法正常工作。从评论中可以看出,其他人实际上可以使用几乎是最新版本的WP来工作(最新的响应时间为4月22日)。 我尝试从站点安装插件并将API文件夹放在第二个域中,但是当有可用更新时,我通常会收到更新通知,但根本没有显示。 我不确定是否确实可以让自定义插件从其他存储库运行自动更新,所以我想听听这里是否有人对此有任何经验?教程中的解决方案似乎是一个简单的解决方案-我想知道是否有可能以更高级的方式来实现? 从我自己的存储库中获取此自动更新的任何帮助将不胜感激! (PS:我正在运行WP版本3.1.3)

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.