我正在尝试修改其中的一部分代码:主题/ flatsome / inc /简码/ux_products.php
我要更改此:
<
a href="http://www.srcmini.com/<
?php echo get_the_permalink();
?>">
为了这
<
a href="http://www.srcmini.com/<
?php echo get_the_permalink();
?>" aria-label="<
?php echo get_the_title();
?>
">
我的子主题文件夹中的路径和文件相同, 但无法取消主主题文件。
我意识到, 还有另一个文件指向我要取消的文件:主题/flatsome/inc/init.php:
if (is_woocommerce_activated()) {
require get_template_directory() . '/inc/shortcodes/ux_products.php';
//File to annul
require get_template_directory() . '/inc/shortcodes/ux_products_list.php';
require get_template_directory() . '/inc/shortcodes/product_flip.php';
require get_template_directory() . '/inc/shortcodes/product_categories.php';
if(get_theme_mod('product_layout') == 'custom') {
require get_template_directory() . '/inc/shortcodes/custom-product.php';
}
}
如何在不修改主题的情况下执行此操作(此方法有效, 但是不正确)。
#1你可以尝试将其添加到子主题的functions.php中吗:
add_filter( 'template_directory', 'search_child_template_directory' );
function search_child_template_directory( $template_dir ) {
if (is_woocommerce_activated()) {
return get_theme_file_path();
}
return $template_dir;
}
#2首先, 你需要将需要修改的简码复制到你的子主题。
'your_child_theme/inc/shortcodes/ux_products.php'
然后, 你需要修改子短代码, 函数名称:
function ux_products($atts, $content = null, $tag)
to
function child_ux_products($atts, $content = null, $tag)
修改你需要的内容:
<
a href="http://www.srcmini.com/<
?php echo get_the_permalink();
?>">
【Woocommerce的Flatsome(INC文件夹中的Annul文件)】to
<
a href="http://www.srcmini.com/<
?php echo get_the_permalink();
?>" aria-label="<
?php echo get_the_title();
?>
">
在子简码文件的末尾, 使用自己的函数覆盖所有(或仅需要的)已声明的简码:
add_shortcode("ux_products", "ux_products");
to
add_shortcode("ux_products", "child_ux_products");
覆盖所有简码:
add_shortcode("ux_bestseller_products", "child_ux_products");
add_shortcode("ux_featured_products", "child_ux_products");
add_shortcode("ux_sale_products", "child_ux_products");
add_shortcode("ux_latest_products", "child_ux_products");
add_shortcode("ux_custom_products", "child_ux_products");
add_shortcode("product_lookbook", "child_ux_products");
add_shortcode("products_pinterest_style", "child_ux_products");
add_shortcode("ux_products", "child_ux_products");
最后, 在你的function.php或’ /inc/init.php’ 中, 当wp_loaded时, 你需要使用覆盖的短代码:
function override_shortcodes(){
if(is_woocommerce_activated()){
require get_stylesheet_directory() . '/inc/shortcodes/ux_products.php';
}
}
add_action('wp_loaded', 'override_shortcodes', 10);
推荐阅读
- 似乎无法在wordpress中更改我的CSS代码
- 致命错误(第463行的C:\xampp\htdocs\AKS_Shop\wp-includes\Requests\Transport\cURL.php中超过30秒的最大执行时间)
- 致命错误(无法重新声明function()-WP主题)
- 致命错误(在第2行的index.php中调用未定义的函数get_header())
- 这里的WordPress主题有什么问题吗()
- 通过WordPress仪表板导出wp内容()
- 在样式化时排除特定的元素
- 从查询中排除预定的post
- 记一次删除PostgresSql数据库 报错(有 N 个其它会话正在使用数据库 的解决方案)