我们正在尝试将产品类别描述放在页面底部,以便产品首先显示。我尝试了本主题中的所有建议,但没有一个能发挥应有的作用。
下面的代码将类别描述放置在三个位置:产品上方、产品中间和产品下方。
remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
add_action( 'woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 100 );
add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );
当我删除中间线(关于 main_content)时,产品的描述就会消失。所以我需要解决的就是删除产品页面顶部的描述。
我非常感谢您的帮助。在 我们的网站上查看产品类别可能会有所帮助。
我的 archive-product.php 代码:
<?php
/** * 显示产品档案的模板,包括主商店页面,这是一个帖子类型的档案 * * 可以通过将其复制到 yourtheme/woocommerce/archive-product.php 来覆盖此模板。 * * 但是,有时 WooCommerce 需要更新模板文件和您(主题开发人员)。 * 需要将新文件复制到您的主题以保持兼容性。我们尝试这样做。 * 尽可能少,但它确实发生了。发生这种情况时,模板文件的版本将会发生变化。 * 被修改,自述文件将列出所有重要的更改。 * * @参见 http://docs.woothemes.com/document/template-struct/ * @作者Transvelo * @package WooCommerce/模板 * @版本2.0.0 */
if ( ! 定义( 'ABSPATH' ) ) { 出口; // 如果直接访问则退出 }
electro_get_header(); ?>
<?php
/**
* woocommerce_before_main_content hook.
*
* @hooked electro_before_wc_content - 10 (outputs opening divs for the content)
* @hooked electro_before_product_archive_content - 20
*/
do_action( 'woocommerce_before_main_content' );
?>
<?php
/**
* woocommerce_archive_description hook.
*
* @hooked woocommerce_taxonomy_archive_description - 10
* @hooked woocommerce_product_archive_description - 10
*/
do_action( 'woocommerce_archive_description' );
?>
<?php if ( have_posts() ) : ?>
<?php
/**
* woocommerce_before_shop_loop hook.
*
* @hooked electro_product_subcategories - 0
* @hooked electro_wc_loop_title - 10
* @hooked electro_shop_control_bar - 10
* @hooked electro_reset_woocommerce_loop - 90
*/
do_action( 'woocommerce_before_shop_loop' );
?>
<?php
/**
* woocommerce_shop_loop hook
*
* @hooked electro_shop_loop
*/
do_action( 'woocommerce_shop_loop' );
?>
<?php
/**
* woocommerce_after_shop_loop hook.
*
* @hooked woocommerce_pagination - 10
*/
do_action( 'woocommerce_after_shop_loop' );
?>
<?php elseif ( ! woocommerce_product_subcategories( array( 'before' => woocommerce_product_loop_start( false ), 'after' => woocommerce_product_loop_end( false ) ) ) ) : ?>
<?php wc_get_template( 'loop/no-products-found.php' ); ?>
<?php endif; ?>
<?php
/**
* woocommerce_after_main_content hook.
*
* @hooked woocommerce_output_content_wrapper_end - 10 (outputs closing divs for the content)
*/
do_action( 'woocommerce_after_main_content' );
?>
<?php
/**
* woocommerce_sidebar hook.
*
* @hooked woocommerce_get_sidebar - 10
*/
do_action( 'woocommerce_sidebar' );
?>
将此代码添加到
function.php
add_action('woocommerce_archive_description', 'custom_archive_description', 2);
function custom_archive_description(){
if ( is_product_category() ){
remove_action('woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
add_action('woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 5 );
}
}
在 function.php 中使用此代码
// move category description to bottom of pages
remove_action( 'woocommerce_archive_description',woocommerce_taxonomy_archive_description', 10 );
add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );
将此函数插入主题的 function.php 中。激活短代码。
在类别页面中使用短代码,短代码中包含的文本将进行跳转
[wcsaltasotto]
您想要在下面跳转的文字
[/wcsaltasotto] function salta_sotto_shortcode( $atts, $content = null ) {
$GLOBALS['salta_sotto_marco'] = '<div class="descrizione-due">' . $content . '<br></div><br>';
}
add_shortcode( 'wcsaltasotto', 'salta_sotto_shortcode' );
function funzione_salta_sotto_marco ( ){
if (isset($GLOBALS['salta_sotto_marco'])) {
echo $GLOBALS['salta_sotto_marco'] ;
}
}
add_action( 'woocommerce_after_shop_loop', 'funzione_salta_sotto_marco' );
已经很久了,但由于没有人回答这个问题,所以在这里:
remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );