✘✘ GRAYBYTE WORDPRESS FILE MANAGER ✘✘

​🇳​​🇦​​🇲​​🇪♯➤ webm004.cluster127.gra.hosting.ovh.net ​🇻​♯➤ 6.18.42-ovh-vps-grsec-zfs+ #1 SMP 🇾​♯➤ 2026

𝗛𝗢𝗠𝗘 𝗜𝗗 ♯➤ 54.36.91.62 ♯➤ 𝗔𝗗𝗠𝗜𝗡 𝗜𝗗 216.73.216.191
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗙𝗙 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ _dyuweyrj4,_dyuweyrj4r,dl

𝗛𝗢𝗠𝗘
𝗖𝗨𝗥𝗥𝗘𝗡𝗧 𝗙𝗜𝗟𝗘 : /home/docteuh/www/envhttps/task-list/helpers//indexable-to-postmeta-helper.php
<?php

namespace Yoast\WP\SEO\Helpers;

use Yoast\WP\SEO\Models\Indexable;

/**
 * A helper object to map indexable data to postmeta.
 */
class Indexable_To_Postmeta_Helper {

	/**
	 * The Meta helper.
	 *
	 * @var Meta_Helper
	 */
	public $meta;

	/**
	 * The map of yoast to post meta.
	 *
	 * @var array
	 */
	protected $yoast_to_postmeta = [
		'title'                  => [
			'post_meta_key' => 'title',
			'map_method'    => 'simple_map',
		],
		'description'            => [
			'post_meta_key' => 'metadesc',
			'map_method'    => 'simple_map',
		],
		'open_graph_title'       => [
			'post_meta_key' => 'opengraph-title',
			'map_method'    => 'simple_map',
		],
		'open_graph_description' => [
			'post_meta_key' => 'opengraph-description',
			'map_method'    => 'simple_map',
		],
		'twitter_title'          => [
			'post_meta_key' => 'twitter-title',
			'map_method'    => 'simple_map',
		],
		'twitter_description'    => [
			'post_meta_key' => 'twitter-description',
			'map_method'    => 'simple_map',
		],
		'canonical'              => [
			'post_meta_key' => 'canonical',
			'map_method'    => 'simple_map',
		],
		'primary_focus_keyword'  => [
			'post_meta_key' => 'focuskw',
			'map_method'    => 'simple_map',
		],
		'open_graph_image'       => [
			'post_meta_key' => 'opengraph-image',
			'map_method'    => 'social_image_map',
		],
		'open_graph_image_id'    => [
			'post_meta_key' => 'opengraph-image-id',
			'map_method'    => 'social_image_map',
		],
		'twitter_image'          => [
			'post_meta_key' => 'twitter-image',
			'map_method'    => 'social_image_map',
		],
		'twitter_image_id'       => [
			'post_meta_key' => 'twitter-image-id',
			'map_method'    => 'social_image_map',
		],
		'is_robots_noindex'      => [
			'post_meta_key' => 'meta-robots-noindex',
			'map_method'    => 'noindex_map',
		],
		'is_robots_nofollow'     => [
			'post_meta_key' => 'meta-robots-nofollow',
			'map_method'    => 'nofollow_map',
		],
		'meta_robots_adv'        => [
			'post_meta_key' => 'meta-robots-adv',
			'map_method'    => 'robots_adv_map',
		],
	];

	/**
	 * Indexable_To_Postmeta_Helper constructor.
	 *
	 * @param Meta_Helper $meta The Meta helper.
	 */
	public function __construct( Meta_Helper $meta ) {
		$this->meta = $meta;
	}

	/**
	 * Creates postmeta from a Yoast indexable.
	 *
	 * @param Indexable $indexable The Yoast indexable.
	 *
	 * @return void
	 */
	public function map_to_postmeta( $indexable ) {
		foreach ( $this->yoast_to_postmeta as $indexable_column => $map_info ) {
			\call_user_func( [ $this, $map_info['map_method'] ], $indexable, $map_info['post_meta_key'], $indexable_column );
		}
	}

	/**
	 * Uses a simple set_value for non-empty data.
	 *
	 * @param Indexable $indexable        The Yoast indexable.
	 * @param string    $post_meta_key    The post_meta key that will be populated.
	 * @param string    $indexable_column The indexable data that will be mapped to post_meta.
	 *
	 * @return void
	 */
	public function simple_map( $indexable, $post_meta_key, $indexable_column ) {
		if ( empty( $indexable->{$indexable_column} ) ) {
			return;
		}

		$this->meta->set_value( $post_meta_key, $indexable->{$indexable_column}, $indexable->object_id );
	}

	/**
	 * Map social image data only if social image is explicitly set.
	 *
	 * @param Indexable $indexable        The Yoast indexable.
	 * @param string    $post_meta_key    The post_meta key that will be populated.
	 * @param string    $indexable_column The indexable data that will be mapped to post_meta.
	 *
	 * @return void
	 */
	public function social_image_map( $indexable, $post_meta_key, $indexable_column ) {
		if ( empty( $indexable->{$indexable_column} ) ) {
			return;
		}

		switch ( $indexable_column ) {
			case 'open_graph_image':
			case 'open_graph_image_id':
				$source = $indexable->open_graph_image_source;
				break;
			case 'twitter_image':
			case 'twitter_image_id':
				$source = $indexable->twitter_image_source;
				break;
		}

		// Map the social image data only when the social image is explicitly set.
		if ( $source === 'set-by-user' || $source === 'imported' ) {
			$value = (string) $indexable->{$indexable_column};

			$this->meta->set_value( $post_meta_key, $value, $indexable->object_id );
		}
	}

	/**
	 * Deletes the noindex post_meta key if no noindex in the indexable. Populates the post_meta key appropriately if there is noindex in the indexable.
	 *
	 * @param Indexable $indexable     The Yoast indexable.
	 * @param string    $post_meta_key The post_meta key that will be populated.
	 *
	 * @return void
	 */
	public function noindex_map( $indexable, $post_meta_key ) {
		if ( $indexable->is_robots_noindex === null ) {
			$this->meta->delete( $post_meta_key, $indexable->object_id );
			return;
		}

		if ( $indexable->is_robots_noindex === false ) {
			$this->meta->set_value( $post_meta_key, 2, $indexable->object_id );
		}

		if ( $indexable->is_robots_noindex === true ) {
			$this->meta->set_value( $post_meta_key, 1, $indexable->object_id );
		}
	}

	/**
	 * Deletes the nofollow post_meta key if no nofollow in the indexable or if nofollow is false. Populates the post_meta key appropriately if there is a true nofollow in the indexable.
	 *
	 * @param Indexable $indexable     The Yoast indexable.
	 * @param string    $post_meta_key The post_meta key that will be populated.
	 *
	 * @return void
	 */
	public function nofollow_map( $indexable, $post_meta_key ) {
		if ( $indexable->is_robots_nofollow === null || $indexable->is_robots_nofollow === false ) {
			$this->meta->delete( $post_meta_key, $indexable->object_id );
		}

		if ( $indexable->is_robots_nofollow === true ) {
			$this->meta->set_value( $post_meta_key, 1, $indexable->object_id );
		}
	}

	/**
	 * Deletes the nofollow post_meta key if no nofollow in the indexable or if nofollow is false. Populates the post_meta key appropriately if there is a true nofollow in the indexable.
	 *
	 * @param Indexable $indexable     The Yoast indexable.
	 * @param string    $post_meta_key The post_meta key that will be populated.
	 *
	 * @return void
	 */
	public function robots_adv_map( $indexable, $post_meta_key ) {
		$adv_settings_to_be_imported = [];
		$no_adv_settings             = true;

		if ( $indexable->is_robots_noimageindex === true ) {
			$adv_settings_to_be_imported[] = 'noimageindex';
			$no_adv_settings               = false;
		}
		if ( $indexable->is_robots_noarchive === true ) {
			$adv_settings_to_be_imported[] = 'noarchive';
			$no_adv_settings               = false;
		}
		if ( $indexable->is_robots_nosnippet === true ) {
			$adv_settings_to_be_imported[] = 'nosnippet';
			$no_adv_settings               = false;
		}

		if ( $no_adv_settings === true ) {
			$this->meta->delete( $post_meta_key, $indexable->object_id );
			return;
		}

		$this->meta->set_value( $post_meta_key, \implode( ',', $adv_settings_to_be_imported ), $indexable->object_id );
	}
}


Current_dir [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]


[ Back ]
𝗡𝗔𝗠𝗘
𝗦𝗜𝗭𝗘
𝗟𝗔𝗦𝗧 𝗧𝗢𝗨𝗖𝗛
𝗨𝗦𝗘𝗥
𝗦𝗧𝗔𝗧𝗨𝗦
𝗙𝗨𝗡𝗖𝗧𝗜𝗢𝗡𝗦
..
--
21 Sep 2026 5.27 PM
docteuh / users
0755
open-graph
--
30 Aug 2026 9.44 PM
docteuh / users
0755
schema
--
4 Sep 2026 2.28 AM
docteuh / users
0755
twitter
--
28 Aug 2026 10.25 PM
docteuh / users
0755
admin-conditional.php
0.323 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
aioseo-helper-20260828152248.php
1.236 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
aioseo-helper.php
1.236 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
asset-helper.php
2.512 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
attachment-cleanup-helper.php
2.24 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
author-archive-helper.php
5.249 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
blocks-helper.php
2.322 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
breadcrumbs-generator-20260831085222.php
12.619 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
breadcrumbs-generator.php
12.619 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
capability-helper.php
2.066 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
class-admin.php
12.73 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
crawl-cleanup-helper.php
8.1 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
curl-helper-20260828152243.php
0.64 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
curl-helper.php
0.64 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
current-page-helper.php
15.633 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
environment-helper.php
0.774 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
feature-flag-integration.php
2.932 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
first-time-configuration-notice-helper.php
5.357 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
home-url-helper.php
0.665 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
icon-redirect-manager.svg
1.299 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
image-helper.php
11.691 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
import-cursor-helper.php
1.359 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
import-helper.php
0.699 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
indexable-helper.php
9.237 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
indexable-to-postmeta-helper.php
6.751 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
indexing-helper.php
12.688 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
integration-interface-20260831021530.php
0.416 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
integration-interface.php
0.416 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
language-helper.php
2.652 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
loadable-interface.php
0.279 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
loader.php
6.886 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
lock-helper.php
2.84 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
meta-helper.php
2.912 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
notification-helper.php
2.009 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
options-helper.php
4.646 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
pagination-helper.php
5.679 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
permalink-helper.php
1.603 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
post-helper-20260828152252.php
5.423 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
post-helper.php
5.423 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
post-type-helper.php
7.178 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
primary-term-helper.php
1.365 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
product-helper.php
1.077 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
redirect-helper.php
1.727 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
require-file-helper.php
0.318 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
robots-helper.php
1.735 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
route-helper.php
0.678 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
sanitization-helper.php
1.031 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
schema-helpers-surface.php
2.85 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
score-icon-helper.php
2.779 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
site-helper.php
0.553 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
social-profiles-helper.php
10.733 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
string-helper.php
1.189 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
taxonomy-helper.php
4.98 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
url-helper.php
8.129 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
user-helper.php
3.932 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
wincher-helper.php
2.509 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
woocommerce-helper.php
1.271 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
wordpress-helper-20260828152308.php
0.5 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
wordpress-helper.php
0.5 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
wp-seo-main.php
17.215 KB
23 Jun 2026 6.20 PM
docteuh / users
0644
wpdb-helper.php
0.915 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
wpml-config.xml
2.081 KB
23 Jun 2026 6.20 PM
docteuh / users
0644
xmlrpc-conditional.php
0.429 KB
23 Jun 2026 6.19 PM
docteuh / users
0644

✘✘ GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME ✘✘
Static GIF Static GIF