Маніпуляцыя WordPress SEO выбару выявы Open Graph
- Адкрытае іерархія графічных малюнкаў у WordPress SEO
- Пашырэнне WordPress SEO Open Graph для малюнкаў
- Розны памер для малюнкаў Facebook
- Адключыце Адкрыты графік для малюнкаў з змесціва
- Выключыць канкрэтныя выявы з тэгаў Open Graph
- Даданне гэтага ў WordPress SEO
Нядаўна я вырашыў праблему прадастаўлення Facebook правільнага памеру малюнкаў паведамленняў для эскізаў паведамленняў праз Open Graph у WordPress, таму ён не выбірае іншага з зместу. Гэта было зроблена з выкарыстаннем добра вядомага плягіну WordPress SEO па Йоаст , На жаль, няма ніякіх варыянтаў, каб захаваць гэта непасрэдна ў WordPress SEO. Але дзякуючы фільтрам, лёгка наладзіць створаныя адкрытыя графікі з некалькімі радкамі кода. У гэтым артыкуле я пакажу некалькі карысных прыкладаў.
Заўвага: Я праверыў гэта на WordPress 3.6.1 з дапамогай WordPress SEO 1.4.18.
Распрацоўшчыкам, магчыма, захочацца паглядзець у WordPress SEO убудовы файл frontend / class-opengraph.php радку 248, каб знайсці 2 функцыі, якія кантралююць, якія і як ствараюцца тэгі Open Graph для малюнкаў.
Абнаўленне :
Yoast SEO убудова моцна змяніўся пасля таго, як я напісаў гэты ўрок, і яго часткі больш не працуюць належным чынам. Гэта значыць, я толькі даведаўся, што выкарыстанне фільтра wpseo _pre _analysis _post _content, як паказана тут, парушае ацэнку SEO.
Абнаўленне 2:
Yoast толькі што абвясціў, што фільтр wpseo _pre _analysis _post _content будзе выдалены 2 лістапада 2015 года цалкам.
Параметры адкрытага графіка WordPress SEO - вазьміце або пакіньце.
Адкрытае іерархія графічных малюнкаў у WordPress SEO
WordPress SEO ад Yoast - наша пераважнае рашэнне для WordPress. Убудова таксама дадае дадзеныя Open Graph для Facebook. На жаль, няма ніякіх тонкіх налад для гэтых дадзеных, і вы альбо ў парадку з усім, што ён робіць, ці вы не. Дазвольце мне растлумачыць, як WordPress SEO стварае тэгі Open Graph для малюнкаў і як вы можаце ўплываць на пералічаныя выявы і памер малюнка толькі з некалькімі радкамі кода.
WordPress SEO уключае ў сябе адкрытыя графічныя тэгі для малюнкаў у наступным парадку:
Для галоўнай старонкі:
- выява першай старонкі, якую вы паказваеце ў опцыях WordPress SEO.
Для асобных паведамленняў і старонак
- прыкметнае малюнак
- выявы ў змесце
Калі выява не знойдзена да гэтага часу, выкарыстоўваецца малюнак па змаўчанні, паказанае ў параметрах WordPress SEO.
Пашырэнне WordPress SEO Open Graph для малюнкаў
Распрацоўшчыкі WordPress SEO выкарыстоўвалі некалькі фільтраў пры стварэнні тэгаў Open Graph для малюнкаў, якія дазваляюць іншым распрацоўнікам наладзіць яго для сваіх патрэб. Я не ўступаю фільтры ў WordPress тут, але проста хачу даць карысны прыклад таго, што вы можаце зрабіць з фільтрамі, якія ў цяперашні час даступныя ў WordPress SEO.
Розны памер для малюнкаў Facebook
Перад тым, як самастойна закадаваць гэтыя рашэнні, я правёў некаторыя даследаванні, як іншыя вырашалі гэта. Ніводнай гэтай інфармацыі я нідзе не знайшоў, але шмат адкрытых пытанняў пра тое, як можна выбраць іншы памер для паведамленняў, адлюстраваных на старонцы. Існуе дзве прычыны, па якіх Facebook выбірае іншую, чым вылучаемую выяву паста, каб раскрыць яе ў часовай прамове. Па-першае, памер менш, чым 600px шырынёй, а другі, суадносіны яшчэ 1,91: 1. Такім чынам, каб выправіць няправільныя выявы ў графіках Facebook, вы можаце спачатку стварыць гэты канкрэтны памер выявы add_image_size () ,
Каб стварыць памер выявы, які "адпавядае" стандарту Facebook, скапіруйце наступны код у тэмы functions.php.
if (function_exists ('add_image_size')) {add_image_size ('facebook', 600, 315); }
Дзве рэчы, якія вы павінны мець на ўвазе, выкарыстоўваючы add_image_size ().
- Даданне "true" ці "false" у якасці чацвёртага атрыбуту дазволіць абрэзаць малюнак у патрэбны памер. Калі б пустыя або ўсталяваныя ў ілжывыя, малюнак будзе зменены ўніз, так што ён адпавядае прынамсі адной з метрык.
- Новы памер малюнка не ствараецца аўтаматычна для старых малюнкаў. Вы павінны аднавіць іх з дапамогай убудовы, як Рэгенерацыя мініяцюр ,
Памер малюнка па змаўчанні, які выкарыстоўваецца SEO убудова Yoast, з'яўляецца 'вялікім'. У стандартнай установцы WordPress "вялікае" малюнак ствараецца максімальнай шырынёй 1024 пікселя. Фільтр, які мы можам выкарыстаць, каб усталяваць іншы памер выявы ў WordPress SEO - wpseo_opengraph_image_size . Проста ўвядзіце наступныя радкі ў functions.php вашай бягучай тэмы, каб звязаць Адкрыты графік з памерам "Facebook", які мы стварылі вышэй.
add_filter ('wpseo_opengraph_image_size', 'mysite_opengraph_image_size'); функцыя mysite_opengraph_image_size ($ val) {return 'facebook'; }
Гэты фільтр працуе толькі для вылучанага малюнка ў WordPress. Малюнкі, узятыя з змесціва, не могуць быць зменены, таму што тут выкарыстоўваецца памер малюнка, паказаны пры ўключэнні выявы ў поле змесціва.
Адключыце Адкрыты графік для малюнкаў з змесціва
У мяне ёсць шмат прыкладаў для дрэнных малюнкаў з-за зместу, якія аўтаматычна з'явіліся як пост-выява ў Facebook. Фільтр wpseo_pre_analysis_post_content дазваляе адключыць гэта простым трукам . Фільтр выкарыстоўваецца для зместу паведамленняў, які пазней шукае выявы. Мы проста ачысцім змест, які вяртаецца, таму выява не знойдзена.
Дадайце наступны код у functions.php.
add_filter ('wpseo_pre_analysis_post_content', 'mysite_opengraph_content'); функцыя mysite_opengraph_content ($ val) {return ''; }
Абнаўленне: Існуе недахоп гэтай функцыі. Паколькі фільтр таксама выкарыстоўваецца пры падрыхтоўцы зместу для SEO-аналізу паведамлення, ён не зможа зрабіць гэта пры вяртанні пустага. JoseV адзначыў рашэнне, па меншай меры, захаваць некаторыя функцыянальныя магчымасці, толькі пазбавіўшы ад іх змесціва тэгаў малюнкаў. Гэта лінія, якую я б выкарыстаў тут.
return preg_replace ("/ <img [^>] +> / i", "", $ val);
Нават калі вашы прыкметы добра адлюстроўваюцца на Facebook, вам варта разгледзець пытанне аб выкарыстанні гэтага фільтра. На старонках без кэша змесціва фільтруецца з кожнай загрузкай старонкі, што можа лічыцца грахом прадукцыйнасці.
Выключыць канкрэтныя выявы з тэгаў Open Graph
Апошні фільтр wpseo_opengraph_image выкарыстоўваецца на кожным з малюнкаў у выглядзе іх URL. Вы можаце выкарыстоўваць гэта, каб выключыць канкрэтныя выявы. У гэтым прыкладзе я дазваляю толькі выявы, якія маюць менавіта 'Facebook' шырынёй 600 пікселяў. Я зразумеў гэта, правяраючы радок '-600x' у URL крыніцы малюнкаў.
add_filter ('wpseo_opengraph_image', 'mysite_opengraph_single_image_filter'); функцыя mysite_opengraph_single_image_filter ($ val) {if (preg_match ('/ - 600x /', $ val)) вяртае $ val; }
Пашыранае выкарыстанне гэтага фільтра - гэта выкарыстоўваць іншы памер выявы для малюнкаў з змесціва. Гэта патрабуе большай маніпуляцыі радкоў і вельмі характэрна для вашага выпадку выкарыстання, таму я прапускаю прыклад.
Калі ласка, звярніце ўвагу, што нават калі вы не ствараеце Open Graph для выявы, Facebook усё яшчэ можа выбраць яго з вашага сайта. Я не зусім упэўнены, наколькі Open Graphs сапраўды паўплывае на выбар "правільнага" малюнка на Facebook. Лепшы спосаб - гэта, безумоўна, забяспечыць дастаткова вялікі прыкметны вобраз для кожнага паведамлення.
Даданне гэтага ў WordPress SEO
Аналізуючы толькі дадзеную праблему і некалькі радкоў WordPress SEO прымусіў мяне зразумець, наколькі лёгка ўбудова Yoast можа быць абноўлена, каб мець некаторыя з функцый, якія я згадаў вышэй. Мне пашанцавала сустрэцца з членам каманды плягінаў WordCamp Europe 2013 і можа здарыцца, што мы дадаем гэта разам у будучым выпуску. Да гэтага часу вы можаце паспрабаваць некаторыя фрагменты кода зверху.