Архив за етикет: WordPress

Fatal error: Call to a member function is_visible() on a non-object in

Наскоро, след малко работа и промени по един от сайтовете ми, получих неприятно съобщение:

Fatal error: Call to a member function is_visible() on a non-object in

… нещо си! 🙂

Да уточня: става въпрос за електронен магазин, а не за блог. Казвам това, защото реших проблема по един начин в конкретната страница и не мога да гарантирам, че така ще бъде и за блог или друга страница.

Та това съобщение е под WordPress сайт.

Как да го решите по най-лесния начин?

Стъпка 1: Отивате в административния панел на страницата, секция „Постоянни връзки“.
Стъпка 2: Избирате друга постоянна връзка от тази, която сте настроили в момента на страницата си.
Стъпка 3: Запаметявате.
Стъпка 4: Отново „Постоянни връзка“ връщате първоначалния си избор.
Стъпка 5: запаметявате.

Това е! При мен се получи, а гледам, че и при 70% от потребителите със същия проблем работи.

Успех.

p.s. – а за работещите под WooCommerce ето едно решение също – ВИЖ ТУК

Как да активираме описание на категория в WordPress, ако темата не го позволява?

Наскоро ми се наложи да напиша кратко описание на категория в мой сайт. Проблемът се появи, когато разбрах, че въпросната WordPress тема не поддържа тази функция, въпреки, че има отделено място за това. Реално, съобщението гласеше:

Описанието не се показва по подразбиране, но някои теми може да ги използват.

и изглежда по следния начин:
описание на категория

Още по-лошото беше, че въпросната тема няма в съдържанието си category.php, което щеше да ме улесни, защото щях да нанеса корекциите директно в този файл.

И така проблема беше – липса на описание на категория и липса на category.php. Как да позволим на една подобна тема да започне публикуването на описание в категория? Ето как!

Описание на категория – къде и как за по-малко от 5 минути?

1. Всяка тема има архив файл, който съответно е archive.php

2. Отваряте редактора на темата в WordPress, който се намира в „Външен вид“ – „Редактор“.

3. Отваряте файл archive.php

4. Намирате следния ред:
описание на категория
По принцип този ред е винаги в началото на кода, така че го търсете някъде там. При мен е на ред 11.

5. Добавете веднага след „{“
описание на категория

6. Кода вече трябва да изглежда ето така:
 описание на категория

Готово! Вече може да пишете описание във всяка една директория, и тя да се появява над публикациите, когато някой натисне нейният линк.

Това се получава така, защото всяка една категория е реално архив на нещо в WordPress

Как да направите ръчен ъпдейт на WordPress тема?

Наскоро ми се наложи да направя ръчен ъпдейт на WordPress тема. Факт е, че автоматичния ъпдейт през системата на WordPress е лесна работа – цъкаш един бутон и си готов. В редовете по-долу ще ви опиша как да направите ръчен ъпдейт на желана от вас тема?

Забележка: хубаво е да си направите един backup на базата данни и така ако стане проблем с ъпдейта за имате резервно копие, което винаги да възстановите и да върнете последния изглед на сайта ви.

Как да направите ръчен ъпдейт на тема в WordPress тема?

За да направите ръчен ъпдейт на WP тема следвайте следните стъпки:

1. Изтеглете си FTP потребител. Препоръчвам FileZilla и може да го изтеглите от тук.

2. Изтеглете новия ъпдейт на вашата тема, която използвате. Въпросната тема винаги е в zip фариант, затова трябва да я „ъпзипнете“. Съветвам ви за по-лесна координация да „ънзипнете“ папката на десктопа си. Виж снимка 1
направите ръчен ъпдейт

3. Имайки вече папката на десктопа, с „drag&drop“ (местене с мишката) я поставяте в следния адрес www.yourdomainsite.com/www/root/wp-admin/themes/. Виж снимка 2
направите ръчен ъпдейт Има още

Как да защитим WordPress сайт от нежелани атаки?

Когато работим с платформата трябва да знаем как да защитим WordPress сайт от нежелани атаки. Това е процес, който отнема време, но колкото и да е то, е малко, в сравнение с щетите, които може да причини липсата му.

В статията Сигурност на основните директории в един WP сайт съм описал подробно, че едно от нещата, които трябва да направите е да промените разрешението на достъп (CHMOD) папките в основната директория на WordPress.

Следващата стъпка е да промените първоначалната си парола за достъп до административния панел и да премахнете „user 1“ от профила си (вашето потребителско име), което много често е admin. Какво трябва да направите е описано много добре в статията Атака към сайтове, използващи WordPress! Какви мерки да вземете.

Ето последващите две важни стъпки когато се опитваме как да защитим WordPress сайт от нежелани атаки.

Как да защитим WordPress сайт, чрез промяна на адреса за вход в страницата

Много често входа в административната част на страницата е /wp-admin.php или /wp-login.php. Ето защо е желателно да промените тази връзка. Можете да я направите както си искате през MySQL базата данни (в този случай се посъветвайте с хостинг доставчика ви) или да използвате специално приложение за това Better WP secuity. Който и случай да изберете, можете да промените връзката както си искате вие, например: www.myblog.com/jsdkghksd. Има още

HTTP error при качване на снимки в WordPress

В един от моите сайтове се появи HTTP error при опит да кача снимка. Сигурно и на вас се е случвало един или два пъти. Какви са обаче решенията, които можете да пробвате за да се справите с HTTP error и да отстраните този проблем.

Да си изясним причините за появата на HTTP error. Опита ми показва, че те винаги са две:
– проблеми с хостинг доставчика
– проблеми с WordPress или т.нар. 500 Internal Server Error

Проблем с хостинг доставчика

Това е първото, което можете да си помислите, когато се появи HTTP error и почти винаги сте прави в това ваше съмнение. Разбира се, тази грешка се появява, когато хостинг доставчика е правил т.нар. конфигурация на сървъра. В този случай ви съветвам да не пипате нищо по сайта, а да драснете едно писмо до хостинг доставчика и да му обясните проблема. Предоставете му ftp достъп и достъп до административния панел с администраторски права и изчакайте да видите резултата. В много случаи, когато доставчика е правил сървър конфигурации ще реши проблема ви за не повече от 20 минути и сте готови.

Проблем 500 Internal Server Error

Това е момента в който разбирате, че хостинг доставчика не е правил сървър конфигурации и проблема е някъде в сайта ви. Има няколко известни и популярни начини за решаване на този проблем, които трябва да направите. Ще ги подредя в низходящ ред (от най-лесното към най-трудното).

Инсталирани приложения – това е първото, което трябва според мен да направите. Деактивирайте всички приложения в сайта ви (не ги изтривайте). Опитайте се да качите снимка. Ако опитът ви е успешен започнете да активирате едно по едно приложенията за да разберете кое от тях предизвиква HTTP error при опита ви. След активирането на приложението, което отново ще ви активира HTTP error имате няколко възможности – ако не е важно, винаги можете да го изтриете. Другият вариант е да пишете на разработчика и да му кажете какъв проблем предизвиква неговото приложение.

CHMOD на папката wp-content – в своята статия „Проблеми с качването на снимки в WordPress? Има решение“ Иво Илиев дава наистина пълно описание как да решите HTTP error в сайта ви. Иначе с прости думи – всяка папка има своите настройки по отношение на правата върху нея. Писал съм за това в статията Сигурност на основните директории в един WP сайт т.е. папката wp-content трябва да има права 777 или 755- да може да се пише в нея и да се изпълняват други администраторски функции. Освен тази папка, всички останали в нея също трябва да е с права 777 или 755. Това решение може да ви позволи да качвате снимки и да премахне HTTP error, но винаги носи риска, оставяйки папките отворени (777 или 755) да предизвикате някой пъпчив хакер да се учи на вашия сайт как се хакват WordPress страници. Моят съвет е да не пипате CHMOD-а на папката или да я направите по защитена. Но това решение зависи само и единствено от вас. Има още

Продуктови вариации на Woocommerce

Тъй като имам запитвания относно продуктови вариации на Woocommerce и най-вече как се правят, реших да ви покажа нагледно цялата процедура.

Не е сложно, просто следвайте стъпките и накрая ще имате няколко цени за един продукт в онлайн магазина ви чрез използването на продуктови вариации на Woocommerce.

1. КАКВО Е ПРОДУКТОВА ВАРИАЦИЯ?
Това са разновидностите на един продукт. Например: във вашия онлайн магазин продавате тениски, но те имат различни размери – S, M, L, XL, XXL и т.н. Също така те биват различни цветове – бели, черни, сини, червени и др. Това са продуктови вариации. Ако обаче червената тениска струва по-скъпо от бялата – това са продуктови вариации с различни цени. За това ще говорим.

2. ЗАДАВАНЕ НА ВИДА НА ПРОДУКТА
За да позволите един продукт да има различни вариации с различни цени, трябва да изберете вида на продукта в приложението на Woocommerce т.е. избирате продукт с вариации. (виж снимка 1)

Снимка 1
Продуктови вариации на Woocommerce

3. ОПРЕДЕЛЕТЕ АТРИБУТИТЕ ЗА ВАРИАЦИИ
От бутона „Атрибути“ на приложението избирате „Custom product attribute“ и задавате „Add“. (виж снимка 2)

Снимка 2
Продуктови вариации на Woocommerce

Задължително отмятате „Used for variations“ с което показвате на Woocommerce, че този продукт ще има различни вариации. Въвеждате вариацията на продукта, например „Black“ като натиснете бутона „Add new“, изписвате „Black“ и натискате „ОК“. След което повтаряте същото упражнение с втора вариация, трета, четвърта и т.н. (виж снимка 3) Има още

Защо Oscar? (WordPress 3.6)

Защо Oscar? WordPress просто решават да нарекат така новия ъпдейт на програмата си на името на джаз музиканта Oscar Peterson. Съжалявам, но нямам познания върху творчеството му и затова ще ви кажа повечко за новостите в WordPress 3.6, които са:

Потребителски
Има нова WP тема и това е Twenty Thirteen. От опит знам, че наистина за да нямате спам проблеми (php файлове, които изпращат нерегламентирани съобщения до ваши абонати или не, без дори и да подозирате) с темите на WP е достатъчно да използвате теми разработени от тях. Разбира се това условие е валидно, ако не инсталирате приложения, които са съмнителни или най-малкото се съмнявате в ефективността им. Препоръчвам приложенията на Auromattic. А относно новата тема – не ми харесва и толкова :D, но то всеки си има вкусове.

Revamped Revisions ви запазва всички промени, които правите и така новия интерфейс на WordPress ви дава шанса на откривате ред по ред всяка една промяна кога е направена и какво сте променили.

Post Locking и Augmented Autosave са предимно за блогове и сайтове с повече от един автор на публикация или по принцип т.е. всеки автор си има собствен autosave режим.

Вграден HTML5 видео плеър за собствено видео, различно от външни източници като Vimeo и YouTube. (до момента не съм пробвал тази новост, но скоро ще го направя и ще ви кажа колко „ефективна е“ и „полезна“. За нетърпеливите да кажа – няма да е порно :D, сигурно някоя скука).

Menu Editor е по лесно разбираемо и лесно за използване. Основно промените са две:
– секция на Menu Editor „страници“, „категории“ и прочие са разделени с падащи менюта;
– позиционирането на менюто в сайта е отделено в отделна категория, озаглавена Manage Location. Има още

Как да защитим wp-config.php?

Как да защитим wp-config.php на сайта е може би една от най-важните стъпки в съхраняването на блога от злонамерен достъп. Нека припомня, че предишните две са Сигурност на основните директории в един WP сайт и Сигурност на WP сайт чрез сървър конфигурация.

Накратко: wp-config.php разполага с осем основни реда в съдържанието си и това са предимно ключовете за защита, които имат за цел добро криптиране на информацията в сайта ви, съхраняването на бисквитките на потребителите ви и сегментирането на пароли от ваша страна. Тези ключове не е нужно да бъдат помнени от вас. Всъщност генерирате ли ги веднъж, повече няма да ви се налага да се занимавате с тях. Характерно за тях е, че трябва да бъдат толкова дълги и уникални, колкото е възможно.

WordPress обаче разработи специален Script за генериране на ключове за защита за вашия wp-config.php и те трябва да изглеждат горе долу ето така:

define(‘AUTH_KEY’, ‘)k#we,!+j[N2^,El,FA$10]cW6o N+ssS:_/Tz)}j^n|NcXfBlYA7Z`’);
define(‘SECURE_AUTH_KEY’, ‘rMIpsab s+};(Q]d2,Z(0]cW6o N+ssS:#Eb8c_-mk8HYx=+kxSF]T`’);
define(‘LOGGED_IN_KEY’, ‘%F:n[-Sxy-D0]cW6o N+ssS0]cW6o N+ssS::$1ni]-Nic}EfaY0=+5’);
define(‘NONCE_KEY’, ‘7R+wxWgb4;eJz&mm8(4m0]cW6o N+ssS:!P|x3/y)E{ve24~A–xgVX’);
define(‘AUTH_SALT’, ‘%23bpPY2;/^(D6pRMnU0]cW6o N+ssS:~+5I`]#8}+H,MH[O6I`=Q:#’);
define(‘SECURE_AUTH_SALT’, ‘YIg7KE_WLitb+E&HSx90]cW6o N+ssS:4 %D6A wf)n2}&%o2sDQs;R’);
define(‘LOGGED_IN_SALT’, ‘*T-::}g6O0_DR62JXyfq0]cW6o N+ssS:,_2++hY Y[KXwK,iu#-eh>’);
define(‘NONCE_SALT’, ‘-Lp~dMDK#v(-_w#?ps0]cW6o N+ssS:L{9Ffk&x:zMg:p=R ueshS*!’);

Това не е новост в WordPress. Ако сте прочели целият файл wp-config.php още при самото инсталиране, щяхте да забележите, че след попълването на името на базата данни и паролата следва точно този съвет на WordPress, като дори са посочили адреса на скрипта. Ето защо моят съвет е да не се опитвате да генерирате вие конкретна комбинация от символи за вашия wp-config.php файл, а чисто и просто да използвате посочения скрипт. Това със сигурност ще защити блога ви по-добре от сега.

Успех!

ПРОЧЕТИ ОЩЕ ПО ТЕМАТА:
Сигурност на WP сайт чрез сървър конфигурация
Сигурност на основните директории в един WP сайт

Сигурност на WP сайт чрез сървър конфигурация

Сигурност на WP сайт чрез сървър конфигурация е продължение на предишната публикация – Сигурност на основните директории в един WP сайт.

Какво трябва да знаете или да направите за да затрудните хакерите от недобронамерено проникване в блога ви с цел да направят поредната поразия?

Ето ги и основните стъпки, които да следвате:

1. Сървър конфигурация на MySQL база данни

– желателно е тя да е във версия 5.5.32 или поне 5.5.25.

2. Сървър конфигурация на PHP

– желателно е PHP версията да е 5.4.16 или с една идея по-висока – 5.4.17. И в двете версии вашият блог или страница ще имат повече от добра защита.

3. Сървър конфигурация на PHP max_execution_time

– ако размера няма значение :D, то поне скоростта със сигурност има. 30s или 60s е добра максимална скорост на PHP execution time.

4. Сървър конфигурация на PHP Memory Limit

– PHP паметта е от значение също. Препоръчвам 256М

5. PHP allow_url_include

– PHP allow_url_include трябва да бъде изключено.

6. PHP allow_url_fopen

– също трябва да е изключен.

Ако по първите четири точки сте зависими от хост доставчика, то т.5 и т.6 можете сами да ги направите. Достатъчно е да намерите файл php.ini и да направите следните настройки:
allow_url_include = off
allow_url_fopen = off

7. Dangerous PHP Functions

– трябва да деактивирате най-опасните PHP функции, които по един или друг начин са врата за някои хакерски атаки.

Отново в php.ini трябва да намерите директивата disable_functions и да добавите следния ред:
disable_functions = system,exec,passthru,shell_exec,proc_open

Ето и най-опасните PHP функции за сигурността на блога/страницата ви:

disable_functions = apache_child_terminate, apache_setenv, define_syslog_variables, escapeshellarg, escapeshellcmd, eval, exec, fp, fput, ftp_connect, ftp_exec, ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist, highlight_file, ini_alter, ini_get_all, ini_restore, inject_code, mysql_pconnect, openlog, passthru, php_uname, phpAds_remoteInfo, phpAds_XmlRpc, phpAds_xmlrpcDecode, phpAds_xmlrpcEncode, popen, posix_getpwuid, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, posix_setuid, posix_uname, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec, syslog, system, xmlrpc_entity_decode

Реално погледнато, в първите четири точки сте зависими от хост доставчика. Вече разбирате, защо ако ще правите WP блог или сайт е важен избора на хостинг доставчик. Не е само цена на годишен план и домейн име, не е само ежедневна поддръжка и др. Трябва да се интересувате какви продукти използват, какви версии и ако не са очакваните да ги питате кога смятат да ги ъпдейтнат.

По последните три точки е чисто и просто ваша работа. Не се мотайте, ами почвайте. Успех!

*Забележка – Запомнете! Файлът php.ini не е WordPress файл!

RSS хранилка за WordPress

Някъде из Facebook или форумите четох, че доста хора се интересуват от RSS хранилка за WordPress, която да внася новини или публикации от чужди сайтове. Ето едно прекрасно приложение за RSS хранилка за WordPress – RSS Multi Importer for WordPress

RSS хранилка за WordPress

Как в същност функционира приложението? Просто е. Всичко се свежда до shortcode.

Инсталиране на RSS хранилка за WordPress

1. Сваляте приложението от тук
2. През административния ви панел или чрез FTP (препоръчвам FreZilla за целта) инсталирате разархивираното приложение в папка /wp-content/plugins/ на страницата ви.
3. Активирате го през административния панел от категория „Приложения“ (Plugins) от менюто.
4. Извършвате му необходимите настройки от Settings (Настройки). Това е!

Настройки на RSS хранилка за WordPress

В общи линии можете да правите настройки за:
– емисии;
– категории
– настройки на shortcodes
– емисии в постовете или публикациите
– избор на параметри на shortcodes
– няколко темплейта за визуализиране
– управление на постове
– експорт на RSS

Приложението е лесно за употреба и едни от основните му характеристики са:
– RSS хранилка от чужди сайтове
– RSS хранилка за конкретни сайтове или публикации
– RSS хранилка, която може да бъде настроена по категории, които вие определяте
– RSS хранилка със снимка
– RSS хранилка с експертен текст
– номериране на RSS хранилки и др.

Съветвам ви да прегледате цялото съдържание на предимствата на това приложение от тук или от тук.

Приятно ползване и късмет!