Php 从函数模板显示post自定义字段
我在wordpress中使用Avada主题。我正在尝试向滚动条中添加一些post自定义字段(鼠标悬停显示)。我试图编辑控制滚动的模板文件,但没有成功。我收到一条错误消息无效“>” 我尝试使用此代码显示自定义字段:Php 从函数模板显示post自定义字段,php,wordpress,wordpress-theming,Php,Wordpress,Wordpress Theming,我在wordpress中使用Avada主题。我正在尝试向滚动条中添加一些post自定义字段(鼠标悬停显示)。我试图编辑控制滚动的模板文件,但没有成功。我收到一条错误消息无效“>” 我尝试使用此代码显示自定义字段: <?php echo get_post_meta( $post_id,'the_price',); ?> Avada功能模板如下所示: if ( ! function_exists( 'avada_render_rollover' ) ) { function
<?php echo get_post_meta( $post_id,'the_price',); ?>
Avada功能模板如下所示:
if ( ! function_exists( 'avada_render_rollover' ) ) {
function avada_render_rollover( $post_id, $post_permalink = '', $display_woo_price = false, $display_woo_buttons = false, $display_post_categories = 'default', $display_post_title = 'default', $gallery_id = '' ) {
// Retrieve the permalink if it is not set
if ( ! $post_permalink ) {
$post_permalink = get_permalink( $post_id );
}
// Check if theme options are used as base or if there is an override for post categories
if ( 'enable' == $display_post_categories ) {
$display_post_categories = true;
} elseif ( 'disable' == $display_post_categories ) {
$display_post_categories = false;
} else {
$display_post_categories = ! Avada()->settings->get( 'cats_image_rollover' );
}
// Check if theme options are used as base or if there is an override for post title
if ( 'enable' == $display_post_title ) {
$display_post_title = true;
} elseif ( 'disable' == $display_post_title ) {
$display_post_title = false;
} else {
$display_post_title = ! Avada()->settings->get( 'title_image_rollover' );
}
// Set the link on the link icon to a custom url if set in page options
$icon_permalink = ( fusion_get_page_option( 'link_icon_url', $post_id ) != null ) ? fusion_get_page_option( 'link_icon_url', $post_id ) : $post_permalink;
if ( '' == fusion_get_page_option( 'image_rollover_icons', $post_id ) || 'default' == fusion_get_page_option( 'image_rollover_icons', $post_id ) ) {
if( ! Avada()->settings->get( 'link_image_rollover' ) && ! Avada()->settings->get( 'zoom_image_rollover' ) ) { // link + zoom
$image_rollover_icons = 'linkzoom';
} elseif( ! Avada()->settings->get( 'link_image_rollover' ) && Avada()->settings->get( 'zoom_image_rollover' ) ) { // link
$image_rollover_icons = 'link';
} elseif( Avada()->settings->get( 'link_image_rollover' ) && ! Avada()->settings->get( 'zoom_image_rollover' ) ) { // zoom
$image_rollover_icons = 'zoom';
} elseif( Avada()->settings->get( 'link_image_rollover' ) && Avada()->settings->get( 'zoom_image_rollover' ) ) { // link
$image_rollover_icons = 'no';
} else {
$image_rollover_icons = 'linkzoom';
}
} else {
$image_rollover_icons = fusion_get_page_option( 'image_rollover_icons', $post_id );
}
// Set the link target to blank if the option is set
$link_target = ( 'yes' == fusion_get_page_option( 'link_icon_target', $post_id ) || 'yes' == fusion_get_page_option( 'post_links_target', $post_id ) ) ? ' target="_blank"' : '';
?>
<div class="fusion-rollover">
<div class="fusion-rollover-content">
<?php if ( 'no' != $image_rollover_icons && 'product' != get_post_type( $post_id ) ) : // Check if rollover icons should be displayed ?>
<?php if ( 'zoom' != $image_rollover_icons ) : // If set, render the rollover link icon ?>
<a class="fusion-rollover-link" href="<?php echo $icon_permalink; ?>"<?php echo $link_target; ?>>Permalink</a>
<?php endif; ?>
<?php if ( 'link' != $image_rollover_icons ) : // If set, render the rollover zoom icon ?>
<?php
// Get the image data
$full_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post_id ), 'full' );
if ( ! is_array( $full_image ) ) {
$full_image = array();
$full_image[0] = '';
}
// If a video url is set in the post options, use it inside the lightbox
if ( fusion_get_page_option( 'video_url', $post_id ) ) {
$full_image[0] = fusion_get_page_option( 'video_url', $post_id );
}
?>
<?php if ( 'linkzoom' == $image_rollover_icons || '' === $image_rollover_icons ) : // If both icons will be shown, add a separator ?>
<div class="fusion-rollover-sep"></div>
<?php endif; ?>
<?php if ( $full_image[0] ) : // Render the rollover zoom icon if we have an image ?>
<?php
// Only show images of the clicked post
if ( 'individual' == Avada()->settings->get( 'lightbox_behavior' ) ) {
$lightbox_content = avada_featured_images_lightbox( $post_id );
$data_rel = sprintf( 'iLightbox[gallery%s]', $post_id );
// Show the first image of every post on the archive page
} else {
$lightbox_content = '';
$data_rel = sprintf( 'iLightbox[gallery%s]', $gallery_id );
}
?>
<a class="fusion-rollover-gallery" href="<?php echo $full_image[0]; ?>" data-id="<?php echo $post_id; ?>" data-rel="<?php echo $data_rel; ?>" data-title="<?php echo get_post_field( 'post_title', get_post_thumbnail_id( $post_id ) ); ?>" data-caption="<?php echo get_post_field( 'post_excerpt', get_post_thumbnail_id( $post_id ) ); ?>">Gallery</a><?php echo $lightbox_content; ?>
<?php endif; ?>
<?php endif; ?>
<?php endif; ?>
<?php if ( $display_post_title ) : // Check if we should render the post title on the rollover ?>
<h4 class="fusion-rollover-title"><a href="<?php echo $icon_permalink; ?>"<?php echo $link_target; ?>><?php echo get_the_title( $post_id ); ?></a></h4>
<?php endif; ?>
<?php
// Check if we should render the post categories on the rollover
if ( $display_post_categories ) {
// Determine the correct taxonomy
if ( 'post' == get_post_type( $post_id ) ) {
$post_taxonomy = 'category';
} elseif ( 'avada_portfolio' == get_post_type( $post_id ) ) {
$post_taxonomy = 'portfolio_category';
} elseif ( 'product' == get_post_type( $post_id ) ) {
$post_taxonomy = 'product_cat';
}
echo get_the_term_list( $post_id, $post_taxonomy, '<div class="fusion-rollover-categories">', ', ', '</div>' );
}
?>
<?php if ( $display_woo_price ) : // Check if we should render the woo product price ?>
<?php woocommerce_get_template( 'loop/price.php' ); ?>
<?php endif; ?>
<?php if ( $display_woo_buttons ) : // Check if we should render the woo "add to cart" and "details" buttons ?>
<div class="fusion-product-buttons">
<?php woocommerce_get_template( 'loop/add-to-cart.php' ); ?>
<span class="fusion-rollover-linebreak"></span>
<a class="fusion-show-details-button" href="<?php echo post_permalink(); ?>"><?php _e( 'Details', 'Avada' ); ?></a>
</div>
<?php endif; ?>
</div>
</div>
<?php
}
}
如果(!function_存在('avada_render_rollover')){
函数avada_render_rollover($post_id,$post_permalink='',$display_woo_price=false,$display_woo_buttons=false,$display_post_categories='default',$display_post_title='default',$gallery_id=''){
//检索未设置的永久链接
如果(!$post\u permalink){
$post\u permalink=get\u permalink($post\u id);
}
//检查主题选项是否用作基本选项,或者是否存在对文章类别的覆盖
如果('enable'=$display\u post\u类别){
$display\u post\u categories=true;
}elseif('disable'=$display\u post\u categories){
$display\u post\u categories=false;
}否则{
$display_post_categories=!Avada()->settings->get('cats_image_rollover');
}
//检查主题选项是否用作基础,或者是否有文章标题的覆盖
如果('enable'=$display\u post\u title){
$display\u post\u title=true;
}elseif('disable'=$display\u post\u title){
$display\u post\u title=false;
}否则{
$display\u post\u title=!Avada()->settings->get('title\u image\u rollover');
}
//如果在页面选项中设置,请将链接图标上的链接设置为自定义url
$icon\u permalink=(fusion\u get\u page\u选项('link\u icon\u url',$post\u id)!=null)?fusion\u get\u page\u选项('link\u icon\u url',$post\u id):$post\u permalink;
if(“”==融合获取页面选项('image\u rollover\u icons',$post\u id)| |'default'==融合获取页面选项('image\u rollover\u icons',$post\u id)){
如果(!Avada()->设置->获取('link\u image\u rollover')&(!Avada()->设置->获取('zoom\u image\u rollover')){//link+zoom
$image_rollover_icons='linkzoom';
}elseif(!Avada()->设置->获取('link\u image\u rollover')&&Avada()->设置->获取('zoom\u image\u rollover')){//link
$image_rollover_icons='link';
}elseif(Avada()->settings->get('link\u image\u rollover')&&!Avada()->settings->get('zoom\u image\u rollover'){//zoom
$image_rollover_icons='zoom';
}elseif(Avada()->settings->get('link\u image\u rollover')&&Avada()->settings->get('zoom\u image\u rollover'){//link
$image_rollover_icons='no';
}否则{
$image_rollover_icons='linkzoom';
}
}否则{
$image\u rollover\u icons=fusion\u get\u page\u选项('image\u rollover\u icons',$post\u id);
}
//如果设置了该选项,则将链接目标设置为空
$link_target=('yes'==融合_获取_页面_选项('link_图标_目标',$post_id)| |'yes'==融合_获取_页面_选项('post_链接_目标',$post_id))?'target=“_blank”:'';
?>
通常要使用$post_id,您需要首先声明全局$post