Current File : /home/bdmcricketindia.in/public_html/wp-content/plugins/wordpress-seo/src/helpers/user-helper.php
<?php

namespace Yoast\WP\SEO\Helpers;

/**
 * A helper object for the user.
 */
class User_Helper {

	/**
	 * Retrieves user meta field for a user.
	 *
	 * @param int    $user_id User ID.
	 * @param string $key     Optional. The meta key to retrieve. By default, returns data for all keys.
	 * @param bool   $single  Whether to return a single value.
	 *
	 * @return mixed Will be an array if $single is false. Will be value of meta data field if $single is true.
	 */
	public function get_meta( $user_id, $key = '', $single = false ) {
		return \get_user_meta( $user_id, $key, $single );
	}

	/**
	 * Counts the number of posts the user has written in this post type.
	 *
	 * @param int          $user_id   User ID.
	 * @param array|string $post_type Optional. Single post type or array of post types to count the number of posts
	 *                                for. Default 'post'.
	 *
	 * @return int The number of posts the user has written in this post type.
	 */
	public function count_posts( $user_id, $post_type = 'post' ) {
		return (int) \count_user_posts( $user_id, $post_type, true );
	}

	/**
	 * Retrieves the requested data of the author.
	 *
	 * @param string    $field   The user field to retrieve.
	 * @param int|false $user_id User ID.
	 *
	 * @return string The author's field from the current author's DB object.
	 */
	public function get_the_author_meta( $field, $user_id ) {
		return \get_the_author_meta( $field, $user_id );
	}

	/**
	 * Retrieves the archive url of the user.
	 *
	 * @param int|false $user_id User ID.
	 *
	 * @return string The author's archive url.
	 */
	public function get_the_author_posts_url( $user_id ) {
		return \get_author_posts_url( $user_id );
	}

	/**
	 * Retrieves the current user ID.
	 *
	 * @return int The current user's ID, or 0 if no user is logged in.
	 */
	public function get_current_user_id() {
		return \get_current_user_id();
	}

	/**
	 * Returns the current users display_name.
	 *
	 * @return string
	 */
	public function get_current_user_display_name(): string {
		$user = \wp_get_current_user();
		if ( $user && $user->display_name ) {
			return $user->display_name;
		}

		return '';
	}

	/**
	 * Updates user meta field for a user.
	 *
	 * Use the $prev_value parameter to differentiate between meta fields with the
	 * same key and user ID.
	 *
	 * If the meta field for the user does not exist, it will be added.
	 *
	 * @param int    $user_id    User ID.
	 * @param string $meta_key   Metadata key.
	 * @param mixed  $meta_value Metadata value. Must be serializable if non-scalar.
	 * @param mixed  $prev_value Optional. Previous value to check before updating.
	 *                           If specified, only update existing metadata entries with
	 *                           this value. Otherwise, update all entries. Default empty.
	 *
	 * @return int|bool Meta ID if the key didn't exist, true on successful update,
	 *                  false on failure or if the value passed to the function
	 *                  is the same as the one that is already in the database.
	 */
	public function update_meta( $user_id, $meta_key, $meta_value, $prev_value = '' ) {
		return \update_user_meta( $user_id, $meta_key, $meta_value, $prev_value );
	}

	/**
	 * Removes metadata matching criteria from a user.
	 *
	 * You can match based on the key, or key and value. Removing based on key and
	 * value, will keep from removing duplicate metadata with the same key. It also
	 * allows removing all metadata matching key, if needed.
	 *
	 * @param int    $user_id    User ID.
	 * @param string $meta_key   Metadata name.
	 * @param mixed  $meta_value Optional. Metadata value. If provided,
	 *                           rows will only be removed that match the value.
	 *                           Must be serializable if non-scalar. Default empty.
	 *
	 * @return bool True on success, false on failure.
	 */
	public function delete_meta( $user_id, $meta_key, $meta_value = '' ) {
		return \delete_user_meta( $user_id, $meta_key, $meta_value );
	}
}
BDM Cricket India: tips, teams, tournaments

Recent Posts

Curious About the Benefits of the Savaspin App

Curious About the Benefits of the Savaspin App? Exploring the Gaming Library of the Savaspin App Exclusive Promotions and Bonuses Offered User Interface: Seamless and Engaging Mobile Compatibility and Performance Connecting with Fellow Gamers Team Play Opportunities Excellent Customer Support Feedback Mechanism Conclusion and Takeaways Curious About the Benefits of …

Read More »

Krvip 온라인 카지노 리뷰.779

한국 Krvip 온라인 카지노 리뷰 최고의 카지노 사이트 추천 및 꿀팁 모음 안전한 게임 환경과 다양한 보너스 혜택까지 ▶️ 놀다 Содержимое Krvip 온라인 카지노의 주요 특징 Krvip 카지노의 인기 게임 소개 Krvip의 보너스 및 프로모션 혜택 Krvip 카지노의 안전성과 신뢰성 Krvip의 모바일 호환성과 편의성 Krvip 카지노의 고객 지원 서비스 Krvip …

Read More »

Ozwin Casino Australia Payment Methods.368

Ozwin Casino Australia – Payment Methods ▶️ PLAY Содержимое Deposit Options Withdrawal Options Bank Wire Transfer Neteller Transaction Limits and Fees Withdrawal Limits and Fees ozwin casino is a popular online gaming platform that offers a wide range of games, including slots, table games, and live dealer games. One of …

Read More »

৫০০% বৃদ্ধি আকর্ষণীয় গেমিং অভিজ্ঞতার চাবিকাঠি!

৫০০% বৃদ্ধি: আকর্ষণীয় গেমিং অভিজ্ঞতার চাবিকাঠি! ক্রেজি টাইম অ্যাপ কি? গেমের বৈশিষ্ট্য সামাজিক মিলন ক্ষেত্র হিসেবে ক্রেজি টাইম অ্যাপ ক্রেজি টাইমের সুবিধা প্রযুক্তির ভূমিকা ভবিষ্যতের দৃষ্টিভঙ্গি অর্থনৈতিক প্রভাব নিরাপত্তা এবং স্বাস্থ্য ক্রেজি টাইম অ্যাপের সাফল্য ক্রেজি টাইম অ্যাপের ভবিষ্যত ৫০০% বৃদ্ধি: আকর্ষণীয় গেমিং অভিজ্ঞতার চাবিকাঠি! বর্তমান ডিজিটাল যুগে, গেমিং অভিজ্ঞতা …

Read More »

CASHlib Casinos in Deutschland – Was bieten sie?

CASHlib Casinos gewinnen in Deutschland immer mehr an Bedeutung. Diese Casinos ermöglichen es Spielern, anonym und sicher mit Prepaid-Guthaben zu bezahlen – ganz ohne Bankverbindung oder Kreditkarte. Besonders für Nutzer, die auf Datenschutz und schnelle Transaktionen Wert legen, sind sie eine interessante Alternative.

Was bieten CASHlib Casinos?

  • Schnelle und anonyme Einzahlungen ohne Registrierung bei Drittanbietern
  • Breites Spielangebot von Slots bis zu Live-Dealer-Spielen
  • Regelmäßige Aktionen wie Freispiele und Cashback
  • Attraktive Willkommensboni für neue Spieler
  • EU-lizenzierte Anbieter mit hohen Sicherheitsstandards

Ein großer Vorteil von CASHlib ist, dass keine sensiblen Bankdaten im Casino hinterlegt werden müssen. Die Gutscheine sind online oder in vielen Verkaufsstellen erhältlich und können sofort verwendet werden. Dadurch entfällt auch die Notwendigkeit, persönliche Daten bei Einzahlungen preiszugeben – ein echter Pluspunkt für sicherheitsbewusste Spieler.

Viele spielothekgermany.com/de/spielothek/cashlib-casinos/ bieten zudem mobile Kompatibilität, einfache Menüführung und professionellen Spielerschutz. Wer nach einem unkomplizierten Zahlungsweg mit solider Auswahl an Spielen und Bonusangeboten sucht, wird bei diesen Plattformen fündig. Die Kombination aus Bequemlichkeit, Sicherheit und einem attraktiven Bonusangebot macht CASHlib Casinos zu einer beliebten Wahl für deutsche Nutzer.

slot 7