移动端手指操控左右滑动的菜单
<
Facebook
Twitter
LinkedIn

wordpress简码、短代码

获取用户头像

				
					<?php 
global $current_user; 
get_currentuserinfo(); 
echo get_avatar( $current_user-&gt;user_email, 32);
 ?> 
				
			

当前登录用户信息

				
					<?php 
global $current_user; 
get_currentuserinfo(); 
echo '' . $current_user-&gt;user_login ;
?>
				
			

loginUserRool

				
					<?php 
global $current_user; 
get_currentuserinfo(); echo '' . $current_user-&gt;user_login  
?>
				
			

获取所有订单GetAllOrderss

				
					<?php 
/* * Template Name: Order Page Template */ 
defined( 'ABSPATH' ) || exit; global $woocommerce, $user_id; if (!class_exists('WooCommerce') || !get_current_user_id()) { return; }; $user_id = get_current_user_id(); //$customer = wp_get_current_user(); $posts_per_page = 20; // Get all customer orders $customer__all_orders = get_posts(apply_filters('woocommerce_my_account_my_orders_query', array( 'numberposts' =&gt;&lt;span data-mce-type="bookmark" style="display: inline-block; width: 0px; overflow: hidden; line-height: 0;" class="mce_SELRES_start"&gt;&lt;/span&gt; -1,&lt;br ?> 'meta_key' =&gt; '_customer_user',</code><br />
'orderby' =&gt; 'date',</code><br />
'order' =&gt; 'DESC',</code><br />
'meta_value' =&gt; $user_id ,</code><br />
'post_type' =&gt; wc_get_order_types(),</code><br />
'post_status' =&gt; array_keys(wc_get_order_statuses()), 'post_status' =&gt; array('wc-processing'),</code><br />
)));</code><br />
$paged = isset($_REQUEST['order_page']) ? $_REQUEST['order_page'] : 1;</code><br />
$total_records = count($customer__all_orders);</code><br />
$total_pages = ceil($total_records / $posts_per_page);</code></p>
<p>$customer_orders = get_posts(array(</code><br />
'meta_key' =&gt; '_customer_user',</code><br />
'order' =&gt; 'DESC',</code><br />
'meta_value' =&gt; $user_id ,</code><br />
'post_type' =&gt; wc_get_order_types(),</code><br />
'posts_per_page' =&gt; $posts_per_page,</code><br />
'paged' =&gt; $paged,</code><br />
'post_status' =&gt; array_keys(wc_get_order_statuses()), 'post_status' =&gt; array('wc-processing'),</code><br />
));</code><br />
?&gt;</code><br />
<?php if (!empty($customer_orders)) : ?></code></p>
<p><br />
?&gt;</code><br />
<br />
</p>
<table class="woocommerce-orders-table woocommerce-MyAccount-orders shop_table shop_table_responsive my_account_orders account-orders-table">
<thead>
<tr><?php foreach ( wc_get_account_orders_columns() as $column_id =&gt; $column_name ) : ?>
<th class="woocommerce-orders-table__header woocommerce-orders-table__header-&lt;?php echo esc_attr( $column_id ); ?&gt;"> </th>
<?php endforeach; ?></tr>
</thead>
<tbody><?php foreach ( $customer_orders as $customer_order ) { $order = wc_get_order( $customer_order ); $item_count = $order-&gt;get_item_count() - $order-&gt;get_item_count_refunded();&lt;br ?>
<tr class="woocommerce-orders-table__row woocommerce-orders-table__row--status-&lt;?php echo esc_attr( $order-&gt;get_status() ); ?&gt; order"><?php foreach ( wc_get_account_orders_columns() as $column_id =&gt; $column_name ) : ?>
<td class="woocommerce-orders-table__cell woocommerce-orders-table__cell-&lt;?php echo esc_attr( $column_id ); ?&gt;" data-title="&lt;?php echo esc_attr( $column_name ); ?&gt;"><br />
<?php if ( has_action( 'woocommerce_my_account_my_orders_column_' . $column_id ) ) : ?></code><br />
<?php do_action( 'woocommerce_my_account_my_orders_column_' . $column_id, $order ); ?></code>
<p><?php elseif ( 'order-number' === $column_id ) : ?></code><br />
<a href="&lt;?php echo esc_url( $order-&gt;get_view_order_url() ); ?&gt;"><br />
<?php echo esc_html( _x( '#', 'hash before order number', 'woocommerce' ) . $order-&gt;get_order_number() ); ?><br />
</a></code></p>
<p><?php elseif ( 'order-date' === $column_id ) : ?></code><br />
<time datetime="&lt;?php echo esc_attr( $order-&gt;get_date_created()-&gt;date( 'c' ) ); ?&gt;"><?php echo esc_html( wc_format_datetime( $order-&gt;get_date_created() ) ); ?></time></code></p>
<p><?php elseif ( 'order-status' === $column_id ) : ?></code><br />
<?php echo esc_html( wc_get_order_status_name( $order-&gt;get_status() ) ); ?></code></p>
<p><?php elseif ( 'order-total' === $column_id ) : ?></code><br />
<?php /* translators: 1: formatted order total 2: total order items */ echo wp_kses_post( sprintf( _n( '%1$s for %2$s item', '%1$s for %2$s items', $item_count, 'woocommerce' ), $order-&gt;get_formatted_order_total(), $item_count ) );&lt;br ?> ?&gt;</code></p>
<p><?php elseif ( 'order-actions' === $column_id ) : ?></code><br />
<?php $actions = wc_get_account_orders_actions( $order ); if ( ! empty( $actions ) ) { foreach ( $actions as $key =&gt; $action ) { // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited&lt;br ?> echo '<a class="woocommerce-button button ' . sanitize_html_class( $key ) . '" href="' . esc_url( $action['url'] ) . '">' . esc_html( $action['name'] ) . '</a>';</code><br />
}</code><br />
}</code><br />
?&gt;</code><br />
<?php endif; ?></code></p>
</td>
<?php endforeach; ?></tr>
<?php } ?></tbody>
</table>
<div class="pagination"><?php $args = array( 'base' =&gt; '%_%',&lt;br ?> 'format' =&gt; '?order_page=%#%',</code><br />
'total' =&gt; $total_pages,</code><br />
'current' =&gt; $paged,</code><br />
'show_all' =&gt; False,</code><br />
'end_size' =&gt; 5,</code><br />
'mid_size' =&gt; 5,</code><br />
'prev_next' =&gt; True,</code><br />
'prev_text' =&gt; __('« Previous'),</code><br />
'next_text' =&gt; __('Next »'),</code><br />
'type' =&gt; 'plain',</code><br />
'add_args' =&gt; False,</code><br />
'add_fragment' =&gt; ''</code><br />
);</code><br />
echo paginate_links($args);</code><br />
?&gt;</code></div>
<p>&nbsp;</p>
<div class="woocommerce-message woocommerce-message--info woocommerce-Message woocommerce-Message--info woocommerce-info"><?php esc_html_e( 'Browse products', 'woocommerce' ); ?></code><br />
<?php esc_html_e( 'No order has been made yet.', 'woocommerce' ); ?></code></div>
<p><?php endif; ?>
				
			

自定义用户头像同步前端和后台

要在WordPress中实现自定义用户头像同步前端和后台,您可以使用以下步骤:

  1. 创建一个自定义用户头像字段:
    首先,您需要创建一个用于上传自定义用户头像的字段。您可以使用WordPress的自定义字段或自定义用户注册表单插件来完成这项任务。确保您的字段允许用户上传图像,并将所上传的图像保存在用户的个人资料中。

  2. 编写自定义功能以在前端显示用户头像:
    您可以在您的主题的functions.php文件中编写自定义功能来在前端显示用户头像。以下是一个示例代码:

				
					//【display_user_avatar]
//同步获取微信头像。自定义用户头像同步前端后台
/***
 * 自定义用户头像同步前端后台
 */
/*function custom_display_user_avatar() {
	$user_id = get_current_user_id(); // 获取当前用户的ID
	$avatar_url = get_user_meta($user_id, 'custom_avatar_field', true); // 获取用户头像字段的值

	if (!empty($avatar_url)) {
		echo '<img decoding="async" src="' . esc_url($avatar_url) . '" alt="User Avatar" />';
	} else {
		echo get_avatar($user_id, 96); // 如果用户没有自定义头像,则显示默认Gravatar头像
	}
}
add_shortcode('display_user_avatar', 'custom_display_user_avatar');
//在需要显示头像的地方用简码【display_user_avatar】调用

				
			

在上面的示例中,我们首先获取当前用户的ID,然后检查是否有自定义头像。如果有自定义头像,则显示它;否则,显示默认的Gravatar头像。

  1. 后台同步自定义头像:
    要在后台同步自定义头像,您需要确保在用户个人资料编辑页面上添加一个字段来上传自定义头像。您可以使用以下代码在用户个人资料编辑页面上添加一个自定义字段:
				
					/*
function custom_user_profile_fields($user) {
    ?>
    <h3 ><a name="toc-6"></a><?php _e('Custom User Avatar', 'textdomain'); ?></h3>
    <table class="formtable">
        <tr>
            <th>
                <label for="custom_avatar_field"><?php _e('Upload Custom Avatar', 'textdomain'); ?></label>
            </th>
            <td>
                <input type="text" name="custom_avatar_field" id="custom_avatar_field" value="<?php echo esc_attr(get_the_author_meta('custom_avatar_field', $user>ID)); ?>" class="regulartext" />
                <input type="button" class="buttonsecondary" id="upload_custom_avatar" value="<?php _e('Upload Image', 'textdomain'); ?>" />
                <br />
                <span class="description"><?php _e('Upload your custom avatar here.', 'textdomain'); ?></span>
            </td>
        </tr>
    </table>
    <?php
}
add_action('show_user_profile', 'custom_user_profile_fields');
add_action('edit_user_profile', 'custom_user_profile_fields');
				
			

发表评论

购物车
微信客服
首页
0
购物车
微信服务
个人中心
支付