Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/wp-conte.../plugins/wordpres.../src/generato...
File: open-graph-locale-generator.php
<?php
[0] Fix | Delete
[1] Fix | Delete
namespace Yoast\WP\SEO\Generators;
[2] Fix | Delete
[3] Fix | Delete
use Yoast\WP\SEO\Context\Meta_Tags_Context;
[4] Fix | Delete
[5] Fix | Delete
/**
[6] Fix | Delete
* Class Open_Graph_Locale_Generator.
[7] Fix | Delete
*/
[8] Fix | Delete
class Open_Graph_Locale_Generator implements Generator_Interface {
[9] Fix | Delete
[10] Fix | Delete
/**
[11] Fix | Delete
* Generates the OG Locale.
[12] Fix | Delete
*
[13] Fix | Delete
* @param Meta_Tags_Context $context The context.
[14] Fix | Delete
*
[15] Fix | Delete
* @return string The OG locale.
[16] Fix | Delete
*/
[17] Fix | Delete
public function generate( Meta_Tags_Context $context ) {
[18] Fix | Delete
/**
[19] Fix | Delete
* Filter: 'wpseo_locale' - Allow changing the locale output.
[20] Fix | Delete
*
[21] Fix | Delete
* Note that this filter is different from `wpseo_og_locale`, which is run _after_ the OG specific filtering.
[22] Fix | Delete
*
[23] Fix | Delete
* @param string $locale Locale string.
[24] Fix | Delete
*/
[25] Fix | Delete
$locale = \apply_filters( 'wpseo_locale', \get_locale() );
[26] Fix | Delete
[27] Fix | Delete
// Catch some weird locales served out by WP that are not easily doubled up.
[28] Fix | Delete
$fix_locales = [
[29] Fix | Delete
'ca' => 'ca_ES',
[30] Fix | Delete
'en' => 'en_US',
[31] Fix | Delete
'el' => 'el_GR',
[32] Fix | Delete
'et' => 'et_EE',
[33] Fix | Delete
'ja' => 'ja_JP',
[34] Fix | Delete
'sq' => 'sq_AL',
[35] Fix | Delete
'uk' => 'uk_UA',
[36] Fix | Delete
'vi' => 'vi_VN',
[37] Fix | Delete
'zh' => 'zh_CN',
[38] Fix | Delete
];
[39] Fix | Delete
[40] Fix | Delete
if ( isset( $fix_locales[ $locale ] ) ) {
[41] Fix | Delete
return $fix_locales[ $locale ];
[42] Fix | Delete
}
[43] Fix | Delete
[44] Fix | Delete
// Convert locales like "es" to "es_ES", in case that works for the given locale (sometimes it does).
[45] Fix | Delete
if ( \strlen( $locale ) === 2 ) {
[46] Fix | Delete
$locale = \strtolower( $locale ) . '_' . \strtoupper( $locale );
[47] Fix | Delete
}
[48] Fix | Delete
[49] Fix | Delete
// These are the locales FB supports.
[50] Fix | Delete
$fb_valid_fb_locales = [
[51] Fix | Delete
'af_ZA', // Afrikaans.
[52] Fix | Delete
'ak_GH', // Akan.
[53] Fix | Delete
'am_ET', // Amharic.
[54] Fix | Delete
'ar_AR', // Arabic.
[55] Fix | Delete
'as_IN', // Assamese.
[56] Fix | Delete
'ay_BO', // Aymara.
[57] Fix | Delete
'az_AZ', // Azerbaijani.
[58] Fix | Delete
'be_BY', // Belarusian.
[59] Fix | Delete
'bg_BG', // Bulgarian.
[60] Fix | Delete
'bp_IN', // Bhojpuri.
[61] Fix | Delete
'bn_IN', // Bengali.
[62] Fix | Delete
'br_FR', // Breton.
[63] Fix | Delete
'bs_BA', // Bosnian.
[64] Fix | Delete
'ca_ES', // Catalan.
[65] Fix | Delete
'cb_IQ', // Sorani Kurdish.
[66] Fix | Delete
'ck_US', // Cherokee.
[67] Fix | Delete
'co_FR', // Corsican.
[68] Fix | Delete
'cs_CZ', // Czech.
[69] Fix | Delete
'cx_PH', // Cebuano.
[70] Fix | Delete
'cy_GB', // Welsh.
[71] Fix | Delete
'da_DK', // Danish.
[72] Fix | Delete
'de_DE', // German.
[73] Fix | Delete
'el_GR', // Greek.
[74] Fix | Delete
'en_GB', // English (UK).
[75] Fix | Delete
'en_PI', // English (Pirate).
[76] Fix | Delete
'en_UD', // English (Upside Down).
[77] Fix | Delete
'en_US', // English (US).
[78] Fix | Delete
'em_ZM',
[79] Fix | Delete
'eo_EO', // Esperanto.
[80] Fix | Delete
'es_ES', // Spanish (Spain).
[81] Fix | Delete
'es_LA', // Spanish.
[82] Fix | Delete
'es_MX', // Spanish (Mexico).
[83] Fix | Delete
'et_EE', // Estonian.
[84] Fix | Delete
'eu_ES', // Basque.
[85] Fix | Delete
'fa_IR', // Persian.
[86] Fix | Delete
'fb_LT', // Leet Speak.
[87] Fix | Delete
'ff_NG', // Fulah.
[88] Fix | Delete
'fi_FI', // Finnish.
[89] Fix | Delete
'fo_FO', // Faroese.
[90] Fix | Delete
'fr_CA', // French (Canada).
[91] Fix | Delete
'fr_FR', // French (France).
[92] Fix | Delete
'fy_NL', // Frisian.
[93] Fix | Delete
'ga_IE', // Irish.
[94] Fix | Delete
'gl_ES', // Galician.
[95] Fix | Delete
'gn_PY', // Guarani.
[96] Fix | Delete
'gu_IN', // Gujarati.
[97] Fix | Delete
'gx_GR', // Classical Greek.
[98] Fix | Delete
'ha_NG', // Hausa.
[99] Fix | Delete
'he_IL', // Hebrew.
[100] Fix | Delete
'hi_IN', // Hindi.
[101] Fix | Delete
'hr_HR', // Croatian.
[102] Fix | Delete
'hu_HU', // Hungarian.
[103] Fix | Delete
'ht_HT', // Haitian Creole.
[104] Fix | Delete
'hy_AM', // Armenian.
[105] Fix | Delete
'id_ID', // Indonesian.
[106] Fix | Delete
'ig_NG', // Igbo.
[107] Fix | Delete
'is_IS', // Icelandic.
[108] Fix | Delete
'it_IT', // Italian.
[109] Fix | Delete
'ik_US',
[110] Fix | Delete
'iu_CA',
[111] Fix | Delete
'ja_JP', // Japanese.
[112] Fix | Delete
'ja_KS', // Japanese (Kansai).
[113] Fix | Delete
'jv_ID', // Javanese.
[114] Fix | Delete
'ka_GE', // Georgian.
[115] Fix | Delete
'kk_KZ', // Kazakh.
[116] Fix | Delete
'km_KH', // Khmer.
[117] Fix | Delete
'kn_IN', // Kannada.
[118] Fix | Delete
'ko_KR', // Korean.
[119] Fix | Delete
'ks_IN', // Kashmiri.
[120] Fix | Delete
'ku_TR', // Kurdish (Kurmanji).
[121] Fix | Delete
'ky_KG', // Kyrgyz.
[122] Fix | Delete
'la_VA', // Latin.
[123] Fix | Delete
'lg_UG', // Ganda.
[124] Fix | Delete
'li_NL', // Limburgish.
[125] Fix | Delete
'ln_CD', // Lingala.
[126] Fix | Delete
'lo_LA', // Lao.
[127] Fix | Delete
'lt_LT', // Lithuanian.
[128] Fix | Delete
'lv_LV', // Latvian.
[129] Fix | Delete
'mg_MG', // Malagasy.
[130] Fix | Delete
'mi_NZ', // Maori.
[131] Fix | Delete
'mk_MK', // Macedonian.
[132] Fix | Delete
'ml_IN', // Malayalam.
[133] Fix | Delete
'mn_MN', // Mongolian.
[134] Fix | Delete
'mr_IN', // Marathi.
[135] Fix | Delete
'ms_MY', // Malay.
[136] Fix | Delete
'mt_MT', // Maltese.
[137] Fix | Delete
'my_MM', // Burmese.
[138] Fix | Delete
'nb_NO', // Norwegian (bokmal).
[139] Fix | Delete
'nd_ZW', // Ndebele.
[140] Fix | Delete
'ne_NP', // Nepali.
[141] Fix | Delete
'nl_BE', // Dutch (Belgie).
[142] Fix | Delete
'nl_NL', // Dutch.
[143] Fix | Delete
'nn_NO', // Norwegian (nynorsk).
[144] Fix | Delete
'nr_ZA', // Southern Ndebele.
[145] Fix | Delete
'ns_ZA', // Northern Sotho.
[146] Fix | Delete
'ny_MW', // Chewa.
[147] Fix | Delete
'om_ET', // Oromo.
[148] Fix | Delete
'or_IN', // Oriya.
[149] Fix | Delete
'pa_IN', // Punjabi.
[150] Fix | Delete
'pl_PL', // Polish.
[151] Fix | Delete
'ps_AF', // Pashto.
[152] Fix | Delete
'pt_BR', // Portuguese (Brazil).
[153] Fix | Delete
'pt_PT', // Portuguese (Portugal).
[154] Fix | Delete
'qc_GT', // Quiché.
[155] Fix | Delete
'qu_PE', // Quechua.
[156] Fix | Delete
'qr_GR',
[157] Fix | Delete
'qz_MM', // Burmese (Zawgyi).
[158] Fix | Delete
'rm_CH', // Romansh.
[159] Fix | Delete
'ro_RO', // Romanian.
[160] Fix | Delete
'ru_RU', // Russian.
[161] Fix | Delete
'rw_RW', // Kinyarwanda.
[162] Fix | Delete
'sa_IN', // Sanskrit.
[163] Fix | Delete
'sc_IT', // Sardinian.
[164] Fix | Delete
'se_NO', // Northern Sami.
[165] Fix | Delete
'si_LK', // Sinhala.
[166] Fix | Delete
'su_ID', // Sundanese.
[167] Fix | Delete
'sk_SK', // Slovak.
[168] Fix | Delete
'sl_SI', // Slovenian.
[169] Fix | Delete
'sn_ZW', // Shona.
[170] Fix | Delete
'so_SO', // Somali.
[171] Fix | Delete
'sq_AL', // Albanian.
[172] Fix | Delete
'sr_RS', // Serbian.
[173] Fix | Delete
'ss_SZ', // Swazi.
[174] Fix | Delete
'st_ZA', // Southern Sotho.
[175] Fix | Delete
'sv_SE', // Swedish.
[176] Fix | Delete
'sw_KE', // Swahili.
[177] Fix | Delete
'sy_SY', // Syriac.
[178] Fix | Delete
'sz_PL', // Silesian.
[179] Fix | Delete
'ta_IN', // Tamil.
[180] Fix | Delete
'te_IN', // Telugu.
[181] Fix | Delete
'tg_TJ', // Tajik.
[182] Fix | Delete
'th_TH', // Thai.
[183] Fix | Delete
'tk_TM', // Turkmen.
[184] Fix | Delete
'tl_PH', // Filipino.
[185] Fix | Delete
'tl_ST', // Klingon.
[186] Fix | Delete
'tn_BW', // Tswana.
[187] Fix | Delete
'tr_TR', // Turkish.
[188] Fix | Delete
'ts_ZA', // Tsonga.
[189] Fix | Delete
'tt_RU', // Tatar.
[190] Fix | Delete
'tz_MA', // Tamazight.
[191] Fix | Delete
'uk_UA', // Ukrainian.
[192] Fix | Delete
'ur_PK', // Urdu.
[193] Fix | Delete
'uz_UZ', // Uzbek.
[194] Fix | Delete
've_ZA', // Venda.
[195] Fix | Delete
'vi_VN', // Vietnamese.
[196] Fix | Delete
'wo_SN', // Wolof.
[197] Fix | Delete
'xh_ZA', // Xhosa.
[198] Fix | Delete
'yi_DE', // Yiddish.
[199] Fix | Delete
'yo_NG', // Yoruba.
[200] Fix | Delete
'zh_CN', // Simplified Chinese (China).
[201] Fix | Delete
'zh_HK', // Traditional Chinese (Hong Kong).
[202] Fix | Delete
'zh_TW', // Traditional Chinese (Taiwan).
[203] Fix | Delete
'zu_ZA', // Zulu.
[204] Fix | Delete
'zz_TR', // Zazaki.
[205] Fix | Delete
];
[206] Fix | Delete
[207] Fix | Delete
// Check to see if the locale is a valid FB one, if not, use en_US as a fallback.
[208] Fix | Delete
if ( \in_array( $locale, $fb_valid_fb_locales, true ) ) {
[209] Fix | Delete
return $locale;
[210] Fix | Delete
}
[211] Fix | Delete
[212] Fix | Delete
$locale = \strtolower( \substr( $locale, 0, 2 ) ) . '_' . \strtoupper( \substr( $locale, 0, 2 ) );
[213] Fix | Delete
if ( ! \in_array( $locale, $fb_valid_fb_locales, true ) ) {
[214] Fix | Delete
return 'en_US';
[215] Fix | Delete
}
[216] Fix | Delete
[217] Fix | Delete
return $locale;
[218] Fix | Delete
}
[219] Fix | Delete
}
[220] Fix | Delete
[221] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function