X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Помогите с регуляркой по картинкам елемента
kvins
kvins
Topic Starter сообщение 1.4.2016, 15:18; Ответить: kvins
Сообщение #1


Завсегдатай
*****


Группа: Active User
Сообщений: 750
Регистрация: 7.9.2011
Из: москва
Поблагодарили: 89 раз
Репутация:   7  


Мне нужно чтобы если в тексте есть картинки без alt и title , то создать их и вписать свое значение.

например в поле $text есть такой текст

_______
<p><img src="/upload/img/te.jpg" height="240" /></p>

<p>специально предназначенный для использования <img title="тут" alt="есть" src="/upload/img/te.jpg" height="240" /> в навесных и кар </p>

<img src="/upload/img/te.jpg" height="240" />
______

как мне найти все <img> которые не имеют alt и title и вписать свое значение, а если alt и title написаны то его не трогать.

Т.е в этом примере должны изменится 2 из 3 картинок, потому что 1 заполнена alt и title

Сделал через jquery но не уверен стоит ли так делать или не важно как ?

Сообщение отредактировал kvins - 1.4.2016, 14:53


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Элантрис
Элантрис
сообщение 1.4.2016, 15:28; Ответить: Элантрис
Сообщение #2


Участник
***

Группа: User
Сообщений: 246
Регистрация: 19.4.2013
Из: Москва
Поблагодарили: 114 раз
Репутация:   25  


Не совсем ясен смысл, задайте свой вопрос корректно.

С точки зрения SEO заполненные теги картинок это дополнительный плюс. Важно соблюдать принцип заполнения каждого тега (наличие переспама, теги максимально соответствуют в первую очередь самому изображению, а уже потом содержимому страницы). Более развернутый ответ предоставлю в ЛС, если уточните все.


--------------------
Комплексный аудит и управление проектами. Консультации для новичков в области SEO и коммерции.
Контакты для связи: elantris.g{собачка}gmail.com
Отвечаю в будни c 9:00 по 23:00, в выходные дни недоступен.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Switchback
Switchback
сообщение 8.4.2016, 5:31; Ответить: Switchback
Сообщение #3


Частый гость
**

Группа: User
Сообщений: 58
Регистрация: 1.12.2008
Из: Харьков
Поблагодарили: 10 раз
Репутация:   2  


Было бы неплохо, если бы поточнее уточнили задачу. Ибо я ничего не понял, как оказалось через пару минут.
На чем написан сайт (язык, движок)? Как вы хотите задавать альт и тайтл картинкам автоматически или вручную?
Ибо я начал писать код, потратил пару минут, а только потом понял, что вы туманно описали задачу.

http://sandbox.onlinephpfunctions.com/code...862cde0fb2ef7b5
Ссылка на онлайн интерпретатор.
Код
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
</head>
<body>
<?php
function setTitle() {return "теперь тоже есть тайтл";}
function setAlt() {return "и тут есть альт";}
$re = "/<\\s*img[^>]*>/"; //регулярка для поиска тегов img и всего их содержимого
$re2 = "/title=\"(?=([^\\\"]*))/"; // регулярка для поиска title
$re3 = "/alt=\"(?=([^\\\"]*))/"; // регулярка для поиска alt
$text = "<p><img src=\"/upload/img/te1.jpg\" height=\"240\" /></p>\n\n<p>специально предназначенный для использования <img title=\"тут\" alt=\"есть\" src=\"/upload/img/te2.jpg\" height=\"240\" /> в навесных и кар </p>\n\n<img src=\"/upload/img/te3.jpg\" height=\"240\" />";
//загоняем в регулярку наш текст
preg_match_all($re, $text, $matches);
$matches = $matches[0];
//перебираем полученный массив с содержимым тегов <img>
foreach ($matches AS $match) {
//если нет одновременно title И alt
  if ( (strpos($match, 'title') == false ) && (strpos($match, 'alt') == false ) ) {
    //добавляем в конец тега случайные title и alt, либо меняем функцию их генерации
    $add_to_text = str_replace('/>', 'title = "'.setTitle().'" alt="'.setAlt().'" />', $match);
    $text = str_replace($match, $add_to_text ,$text);
  }
}
echo "<pre>";
$text = htmlspecialchars($text);
echo $text;
echo "</pre>";
?>
</body>
</html>


--------------------
Успеха достигает тот, кто не оставляет сил на обратный путь.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
webhelper777
webhelper777
сообщение 15.4.2016, 10:40; Ответить: webhelper777
Сообщение #4


Новичок
*

Группа: User
Сообщений: 20
Регистрация: 9.4.2016
Поблагодарили: 0 раз
Репутация:   0  


полностью автоматизировать подобную задачу не получится (разве что если alt и title везде одинаковый), оптимальным решением будет обычный поиск по проекту или на странице в редакторе с последующей заменой
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Помогите выбрать программу
Помогите выбрать программу
11 impak 1353 11.12.2017, 13:11
автор: Mikki
Открытая тема (нет новых ответов) Помогите найти плагин на WP
Отзывы с профилей соц сетей
1 SEOMR 447 30.11.2017, 7:18
автор: Nell
Открытая тема (нет новых ответов) Помогите найти проблему
Долгий ответ сервера
6 maxim1249 700 29.11.2017, 17:27
автор: genjnat
Открытая тема (нет новых ответов) Помогите оценить новотник. Плиз
1 Alex-777 530 29.11.2017, 7:18
автор: grumdas
Открытая тема (нет новых ответов) Помогите с неймингом для сборника советов
советы по разработки и жизни
11 coremission 1890 15.11.2017, 22:23
автор: rogefer


 



RSS Текстовая версия Сейчас: 17.12.2017, 16:09
Дизайн