minesmilesПривіт всім відвідувачам Zura — Blog, в попередній публікації говорилось про те, як поміняти старі смайлики на новіші, “закортіло” мені і надалі ще трохи “пошаманити” з смайликами.

І в результаті винайшов я спосіб,  завдяки якому можна додати до своїх смайликів, ще смайлик, ну або декілька смайликів, і звісно що ті смайлики які вже є в наявності на сайті, вони залишаються а не видаляються.

Спосіб, завдяки якому не має потреби видаляти котрийсь з вже існуючих смайликів, адже якщо би існуючі смайлики видалялись, тоді це вважалась би заміна смайлика.

А не додавання смайлика, а додаванням вважається тоді, коли ви до існуючого якогось предемету, або обєкту, добавляєте ще один.

Отже, яким чином  до існуючих вже смайликів можна додати ще пару смайликів, і при цьому як я вже зазначав, не потрібно видаляти жодного з попередніх смайликів, які були присутні в папці.

І в кінцевому підсумку, отримати в формі для коментування можливість вставляти ці смайлики, а також і можливість вставляти для своїх публікацій, ще один смайлик, або декілька смайликів.

Прикинув я зараз, що для більшості з вас, хто зараз почав читати цю публікацію, звичайно цікавить питання, чи складно буде зробити всі ці дії, після яких до вже існуючих смайликів, добавиться ще декілька.

Звичайно що не складно, оскільки в тлумаченні, я все опишу досить детально кожну дію, думаю що будь кому це завдання буде “під силу” виконати.

А ось знайти такий спосіб, щоб додати ще пару смайликів до існуючих, взагалі то для мене виявилось не легко, оскільки інформації як такої в мережі я так і не знайшов, на деяких блогах вказано що таке завдання можна виконати за допомогою плагіна.

А ось як вручну додати, була тільки інформація про той спосіб, про який я писав в минулій публікації, але це все ж таки заміна смайликів, а не додавання смайлика, ну і також на деяких блогах прочитав такі собі хитрі “відмазки”, мовляв що і цих смайликів хватає, і в тому не має сенсу, з цим всім морочитись.

Ну не знаю, моя думка така, що якби автор публікації знав, то скоріш за все би написав, адже не складно викласти ще одну публікацію, яка би стосувалась інформації, саме як додати до існуючих  вже  смайликів, ще  одні, а не поміняти на інші.

А головне що в назві публікацій, — :clapping_mini: було вказано як додати смайлики а не поміняти.

То що не дуже охота морочитись з цим всім, то це правда, але мені всерівно закортіло проявити настирність, і все таки зробити так, щоб ще один смайлик, появився в полі для коментарів.

Знаєте, коли вперше виникла ідея попаритись з смайликами,  то спочатку шукаючи спосіб яким чином можна це зробити, вирішив в редакторі WordPress передивлятися коди підходящих файлів, звісно що зразу давай передивлятись коди файлу “comments.php”,  нічого потрібного що би стосувалось заміни смайликів, я там не знайшов, а ось у файлі “smiley.php” знайшов щось цікаве, це массив з кодами для смайликів.

Тоді ще глянувши на массив, появилась думка яким чином зможу додати ще смайлики, хоча мене цей массив зацікавив, і точніше тоді ще зацікавив цей спосіб щоб  додати смайлики, але ще нижче в коді знаходилось посилання, посилання вказувало на папку де мали би знаходитись смайлики.

Знайшов я в папках  на тестовому сайті цю папку з смайликами, досвід вже підказував, що поміняти смайлики можна дуже просто, це додати нові смайлики в папку з старими смайликами, і поміняти назву в нових смайликах, на назву старих.

Таким чином появляться на сторінці, замість старих смайликів новіші, подібний спосіб вже не раз застосовував, коли міняв якусь картинку, і залишилось просто перевірити, чи спрацює.

minesmiles1

посилання нижче в коді, вказало на папку де мали би знаходитись смайлики

Все спрацювало як має бути, звісно що, коли не провіриш чи все коректно працює, тоді і не має сенсу писати про це.

Звичайно, що якщо поміняти графічні файли в тому самому форматі, і вказати ту назву яка прописана в коді, то зображення вже буде відображатись таке, яке відноситься до того файлу що ви поміняли, але коли все не перевіриш, то це всерівно вважається догадка, а не факт.

Власне, маючи на увазі вже той массив, на який я звернув тоді увагу, знаходиться в файлі “smiley.php”, сам прикинув як зможу додати до цих змінених смайликів на новіші ще одні смайлики, звичайним способом, просто в кодах файлу потрібно прописавши в массиві назву графічного файла (назву смайлика), його індентифікатор, і помістивши цей файл смайлика в папку “smilies”, таким чином в формі для коментарів, повинен зявитись ще один смайлик.

Шлях до папки  “smilies”

wp-includes ⇒images ⇒ smilies

Отож, знову давай я  “паритись” з смайликами,  власне часу то не довго зайняло, додав я в папку смайлик, прописав індентифікатор смайлика в массиві, кодах файлу “smiley.php”, і цей смайлик появився, :198:   “красава”, в формі для коментарів.

minesmiles2

прописав значення в коді файлу “smiley.php”

Звісно що, отримавши прийнятний результат, я прийнявся зразу за написання публікації, коли почавши вже писати третій рядок публікації, чомусь тільки потім вирішив перевірити, як працює новий смайлик.

Перевіряю на тестовому сайті, спочатку додаю смайлик до публікації, а потім і в комент, ага не тут то було, далеко я розігнався, і результат “дуля”, замість смайлика, відображався тільки його  індентифікатор, “:198:”

 

Смайлики які я вчора просто поміняв на старі, відображались, а новий смайлик який я додав в папку, і в массиві прописав індентифікатор цього смайлика, ні не відображався.

Зрозуміло було, що потрібно ще в якомусь з файлів вказати індентифікатор смайлика, оскільки очевидно, що код нового смайлика в якомусь з потрібних файлів не вказаний, але ж, звідки знати в якому саме файлі, я вже маючи деякий досвід, в розвязуванні подібних завдань, “прикинув” що скоріш за все це файл “functions.php”.

Я  подумав, що саме там, потрібно шукати куда додати код для нового смайлика, в принципі я і не помилявся, але “functions.php”  присутній як і в папці, яка має відношення до шаблону, і також в папці яка має відношення до csm WordPress.

З першого разу я не знайшов, зайняло в мене того дня часу на пошуки добряче, і все було марно, памятаю виключив я розачаровано компютер, оскільки не получилось, але наступного дня, всерівно, не давало мені все це спокою.

Знову давай по новому “ритись” в кодах, і знайшов я в рядку коду “function smilies_init()”  в дві тисячі сімсот семдесять пятому рядку, знайшов то що шукав, перевірив чи спрацює, і результат появився.

minesmiles7

“function smilies_init()”  в дві тисячі сімсот семдесять пятому рядку

minesmiles3

Знаєте, спочатку подумав що вчора якимось чином добре не додивився, куда прописувати індикатор нового смайлика, і лише через декілька хвилин побачив, що файл “functions.php” знаходиться в іншій папці, не в тій папці, в котрій я вчора шукав.

Щось не подумав тоді, що файли з такою назвою, це “functions.php” можуть бути два файли, і в різних папках, а коди то я передивлявся в редакторі Wordpress, а файл смайликів з редактора WordPress, взятий з папки шаблону, тому звичайно що потрібні рядки коду, куда саме потрібно додати індентифікатор смайлика, я не знайшов, оскільки файл “functions.php” був не той що потрібно.

 

Ну що ж, менше з тим, як говориться більше діла менше слів, далі тлумачення, що як і куда додається.

Отож, не потрібно бути великим “гуру”, щоб самому розуміти що файли в яких ви збираєтесь робити зміни, обовязково потрібно зберегти в себе на компі. Тим самим страхуючи себе, а це два файли “functions.php” і  “smiley.php”.

Зберігши їх, ви можите робити зміни в кодах файлів, прямо з вашої адмінки, ну або з хостинга, там також мабуть у вас повинна бути присутня така можливість, в крайньому разі з копії збережених файлів, зробіть ще копії, і в цих копіях зробивши зміни в кодах, завантажте файли “functions.php” і  “smiley.php” на хостинг, помінявши їх.

Перед завантаженням на хостинг, обовязково перевірити чи файли які ви збираєтесь завантажити мають назву “functions.php” і  “smiley.php”, а не назву копій “functions1.php” і  “smiley1.php”.

Навіть якщо ви завантажите на хостинг файли з назвою копії, з вашим сайтом нічого не станеться, але результату ви не отримаєте, чому не отримаєте, навіть і Гриць, який пас гусей, мабуть здогадався би.

Забіг я на перед, як говориться “не гони лошадей”, спочатку звісно що потрібно вибрати смайлик. Я вибрав на вигляд такий.   :198: — назву вказав цифрою (198)

Назву і індентифікатор графічного файлу смайлика, можите любу придумати, свій смайлик я назвав цифрою (198), вказавши назву в массиві, в коді файлу “smiley.php”, після чого  як ви вже самі зрозуміли, що смайлик повинен появитись.

Як виявилось, коли міняти старі смайлики на новіші, також можна і не обовязково міняти назви файлів, можна назви смайликів залишати ті самі, але в такому разі потрібно назви цих графічних файлів, які відображають смайлики прописати в кодах, хоча легше і безпечніше звичайно все таки просто поміняти назву файлу у смайликів.

Отож, спочатку вибираєте смайлик який ви хочите додати, а далі перш ніж перенести файл в потрібну папку, необхідно прописати його назву, і індентифікатор в коді, потрібно прописати в двох файлах, “functions.php” і  “smiley.php”, спочатку в “smiley.php”, не спішіть з “functions.php”, оскільки назва з таким файлом не одна.

Файлів “functions.php”  є більше, але в різних папках.

Отож, спочатку шукаємо файл “smiley.php” для редактування, знайти цей файл не тяжко, він доступний навіть через адмінку, в редакторі WordPress.

Дістатись до файлу з адмінки можна таким чином, в боковому меню підводимо курсор миші до пункту “Зовнішній вигляд”, і з випадаючого списку клацаємо на інструмент “Редактор”. Правда у нас не буде в цьому редакторі, нумерації рядків кодів.

minesmiles4

minesmiles5

Тому мабуть краще робити зміни в редакторі на хостингу.

Або завантажити цей файл з хостинга до себе на комп, і відкрити в редакторі для програмування, варіант Notepad++ рекомендую. Шлях до файлу “smiley.php”.

Коренева папка сайту ⇒ “wp-content” ⇒ “themes” ⇒ “library” ⇒ файл “smiley.php”

Коренева папка сайту, далі папка “wp-content”, і наступна папка “themes”, тут слід бути уважнішим, адже в цій папці знаходяться папки ваших тем, є звісно що папка теми яка на даний момент використовується як шаблон вашого сайту, якраз ця папка то і потрібна, у вас можуть бути інші папки, це папки інших шаблонів, які на даний момент не застосовуються.

Зміни в файлі, звичайно робляться в тій папці, шаблон якої ви на даний момен використовуєте, в принципі не виключено що у вас може бути тільки одна папка, відкриваєте папку в якій знаходяться файли і папки вашої теми, а в ній шукаємо папку “library”, відкриваємо і шукаємо наш файл “smiley.php”.

На жаль саме на цьому пункті, я не можу точно знати, чи в шаблоні вашої теми, може бути саме з такою назвою файл, але думаю, що подібний за функціональністю файл, який призначений для смайликів, у вас повинен бути присутній, можливо назва може бути інша, але файл який має відношення до смайликів, скоріш за все є.

Звичайно що відкриваєте цей файл, і шукаєте в файлі массив, знайти не тяжко, орієнтуєтесь або по індентифікаторах ваших смайликів, наприклад “:razz:”  або “:!:” чи “:evil:” або ще легше по назвах файлів смайликів, вони довші “icon_wink.gif”, вони знаходяться в массиві  “array” там знаходяться рядки кодів.

minesmiles8

“:razz:”  або “:!:” чи “:evil:” “icon_wink.gif”, знаходяться в массиві

В принципі змінна до якої приписаний массив, а в массиві вказані рядки кодів, які мають відношення до смайликів, все це знаходиться в коді файлу в функції, а функція ймовірніше за все буде мати саме таку назву “function theme_get_smilies()”.

Коли знайшли такі рядки, далі все дуже просто, вибираєте рядок коду з вже прописаного смайлика, копіюєте і вставляєте нижче, а в ньому звісно що замість назви смайлика який ви вставили скопіювавши, видаляєте і вказуєте свою.

Наприклад

‘:mrgreen:’ => ‘icon_mrgreen.gif’,
‘:198:’ => ‘icon_198.gif’,

Як самі бачите, порівнюючи рядки кодів вище, які зміни робляться, це індентифікатор (‘:mrgreen:’) міняємо на (‘:198:’), а назву файлів смайлика (‘icon_mrgreen.gif’) на назву (‘icon_198.gif’).

До речі, в назві файлу доданого мною смайлика, до назви “198.gif” я додав приставку “icon_”, получилась назва “icon_198.gif”, тим самим я вирішив підстрахуватись, підналаштувавшись під рядок кодів вище.

До назви саме вашого файлу додавати приставку “icon_”,  можливо і не обовязково буде, в принципі і з назвою без цієї вставки, просто з назвою “198.gif” в мене також появлявся цей смайлик.

Щоб смайлик появився в формі для коментування, в папку “smilies” потрібно помістити файл цього смайлика, ну і звичайно що з такою назвою, яку ви вказали в коді, я вказав “icon_198.gif”. Коли збережете зміни і обновити сторінку, у вас появиться ще один смайлик.

Але не варто ще задоволено потирати руки, оскільки смайлик хоть і відображається тепер в формі для коментарів, але якщо ви його захочите додати до комента, або застосувати додавши до тексту в публікації, то отримаєте на сторінці, тільки його індентифікатор, в мене :198:.

Для того щоб появився смайлик, потрібно ще додати в коді вказівку, в ще одному файлі, це файл “functions.php”.

І вся фішка то в тому, що такий файл в папках вашого сайту, якщо сайт створений за рахунок системи управління контентом csm WordPress, файл  “functions.php” не один, оскільки такий файл також присутній і в папці вашої теми, шаблон якої використовується вашим сайтом, але цей файл який знаходиться в папці вашого шаблону, якраз то і не потрібний.

Оскільки там потрібні рядки кодів, в яких необхідно додати вказівку, яка буде вказувати на файл вашого смайлика, там цих рядків не має.

Що сказати, мені прийшлось добряче “помудохатись”, щоб знайти потрібний файл, а в ньому правда потрібні рядки кодів знайшов без проблем, як говориться хто шукає — той знаходить.

Шлях до файлу такий, коренева папка вашого сайту, далі папка “wp-includes”, папка через яку лежить шлях і до папки з смайликами, в папці “wp-includes” якраз і знаходиться потрібний файл “functions.php”.

коренева папка вашого сайту ⇒ “wp-includes” ⇒ “functions.php”

Також відзначу, що за розмірами файл “functions.php” який знаходиться в папці  “wp-includes” значно більший, ніж файл “functions.php”, який знаходиться в папці шаблону вашої теми.

Відкриваємо в редакторі файл “functions.php” 

$wpsmiliestrans = array(

‘:clapping_mini:’ => ‘icon_clapping_mini.gif’,
‘:198:’ => ‘icon_198.gif’,);

дві тисячі сімсот шістдесять третій рядок, там в рядку коду знаходиться змінна $wpsmiliestrans і массив array() саме там також вказуємо то саме значеня, яке ви вказували в рядку кода в масииві файлу   “smiley.php”.

minesmiles7

Все, зберігаємо зміни і смайлики додані, і ними можна користуватись, додавати як в текст для кометарів, так і в текст для публікацій, нижче два приклади, два додані мною смайлики, відображаються і в публікації, і в формі для кометування.

Screenshot_8

:198: :clapping_mini:

Ну що ж, буду мабуть я вже закруглятись, отож як додати смайлик ?

вибираємо смайлик, вставлямо в папку “smilies”, шлях до папки wp-includes ⇒ images ⇒ smilies

далі шукаємо файл “smiley.php”, шлях до файлу “wp-content” ⇒ “themes” ⇒ “library” ⇒ файл “smiley.php”

В файлі “smiley.php” прописуємо код для смайлика, наприклад назва мого смайлика “icon_198.gif”, тоді прописуємо таки рядок коду (‘:198:’ => ‘icon_198.gif’,)

шукаємо файл “functions.php”, шлях “wp-includes” ⇒ “functions.php”

і в файлі “functions.php, в коді після 2763 рядка, також прописуємо рядок коду ‘:198:’ => ‘icon_198.gif’.

На цьому все, до зустрічі !


На відео показано як додати і поміняти смайлики для коментарів і публікацій