Version Description
(05.02.2021) =
- CSS (turbo:extendedHtml) - "".
- ( ).
- .
- "yturbo_before_ads" ( , ).
Download this release
Release Info
Developer | Flector |
Plugin | RSS for Yandex Turbo |
Version | 1.29 |
Comparing to | |
See all releases |
Code changes from version 1.28 to 1.29
- inc/yablocks.js +8 -8
- readme.txt +13 -7
- rss-for-yandex-turbo.php +49 -8
inc/yablocks.js
CHANGED
@@ -10,13 +10,13 @@
|
|
10 |
onclick: function() {
|
11 |
editor.insertContent(`
|
12 |
<table style="border-collapse: collapse;" border="1">
|
13 |
-
<tr
|
14 |
<th>Первый столбец</th>
|
15 |
<th>Второй столбец</th>
|
16 |
</tr>
|
17 |
-
<tr
|
18 |
-
<
|
19 |
-
<
|
20 |
</tr>
|
21 |
</table><br>
|
22 |
`);
|
@@ -27,13 +27,13 @@
|
|
27 |
onclick: function() {
|
28 |
editor.insertContent(`
|
29 |
<table data-invisible="true">
|
30 |
-
<tr
|
31 |
<th>Первый столбец</th>
|
32 |
<th>Второй столбец</th>
|
33 |
</tr>
|
34 |
-
<tr
|
35 |
-
<
|
36 |
-
<
|
37 |
</tr>
|
38 |
</table><br>
|
39 |
`);
|
10 |
onclick: function() {
|
11 |
editor.insertContent(`
|
12 |
<table style="border-collapse: collapse;" border="1">
|
13 |
+
<tr>
|
14 |
<th>Первый столбец</th>
|
15 |
<th>Второй столбец</th>
|
16 |
</tr>
|
17 |
+
<tr>
|
18 |
+
<td>Первый столбец</td>
|
19 |
+
<td>Второй столбец</td>
|
20 |
</tr>
|
21 |
</table><br>
|
22 |
`);
|
27 |
onclick: function() {
|
28 |
editor.insertContent(`
|
29 |
<table data-invisible="true">
|
30 |
+
<tr>
|
31 |
<th>Первый столбец</th>
|
32 |
<th>Второй столбец</th>
|
33 |
</tr>
|
34 |
+
<tr>
|
35 |
+
<td>Первый столбец</td>
|
36 |
+
<td>Второй столбец</td>
|
37 |
</tr>
|
38 |
</table><br>
|
39 |
`);
|
readme.txt
CHANGED
@@ -3,9 +3,9 @@ Contributors: Flector
|
|
3 |
Donate link: https://money.yandex.ru/to/41001443750704/200
|
4 |
Tags: yandex, turbo, yandex turbo, rss, feed, турбо, яндекс турбо, яндекс
|
5 |
Requires at least: 4.4
|
6 |
-
Tested up to: 5.
|
7 |
Requires PHP: 5.3
|
8 |
-
Stable tag: 1.
|
9 |
|
10 |
Создание RSS-ленты для сервиса Яндекс.Турбо.
|
11 |
|
@@ -425,17 +425,23 @@ add_filter( 'yturbo_tags_list', 'my_custom_tags_list' );`
|
|
425 |
|
426 |
== Screenshots ==
|
427 |
|
428 |
-
1. Пример добавленных RSS-лент в Яндекс.Вебмастере.
|
429 |
-
2. Настройки плагина.
|
430 |
-
3. Метабокс плагина.
|
431 |
|
432 |
== Changelog ==
|
433 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
434 |
= 1.28 (14.08.2020) =
|
435 |
|
436 |
* изменен интерфейс исключения и добавления записей таксономий.
|
437 |
-
*
|
438 |
-
|
439 |
|
440 |
= 1.27 (06.04.2020) =
|
441 |
|
3 |
Donate link: https://money.yandex.ru/to/41001443750704/200
|
4 |
Tags: yandex, turbo, yandex turbo, rss, feed, турбо, яндекс турбо, яндекс
|
5 |
Requires at least: 4.4
|
6 |
+
Tested up to: 5.6
|
7 |
Requires PHP: 5.3
|
8 |
+
Stable tag: 1.29
|
9 |
|
10 |
Создание RSS-ленты для сервиса Яндекс.Турбо.
|
11 |
|
425 |
|
426 |
== Screenshots ==
|
427 |
|
428 |
+
1. Пример добавленных RSS-лент в Яндекс.Вебмастере.
|
429 |
+
2. Настройки плагина.
|
430 |
+
3. Метабокс плагина.
|
431 |
|
432 |
== Changelog ==
|
433 |
|
434 |
+
= 1.29 (05.02.2021) =
|
435 |
+
|
436 |
+
* добавлена поддержка CSS (turbo:extendedHtml) - вкладка "Оформление".
|
437 |
+
* исправлена функция удаления эмоджи (дефизы и тире больше не удаляются из заголовков записей).
|
438 |
+
* исправлен код таблиц в визуальном редакторе шаблонов.
|
439 |
+
* добавлен фильтр "yturbo_before_ads" (после формирования контента записи, но до вставки рекламы).
|
440 |
+
|
441 |
= 1.28 (14.08.2020) =
|
442 |
|
443 |
* изменен интерфейс исключения и добавления записей таксономий.
|
444 |
+
* исправлена совместимость с WordPress 5.5 (выбор тегов для удаления).
|
|
|
445 |
|
446 |
= 1.27 (06.04.2020) =
|
447 |
|
rss-for-yandex-turbo.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: RSS for Yandex Turbo
|
4 |
Plugin URI: https://wordpress.org/plugins/rss-for-yandex-turbo/
|
5 |
Description: Создание RSS-ленты для сервиса Яндекс.Турбо.
|
6 |
-
Version: 1.
|
7 |
Author: Flector
|
8 |
Author URI: https://profiles.wordpress.org/flector#content-plugins
|
9 |
Text Domain: rss-for-yandex-turbo
|
@@ -27,7 +27,7 @@ add_action( 'admin_notices', 'yturbo_add_notice_ads' );
|
|
27 |
function yturbo_check_version() {
|
28 |
$yturbo_options = get_option('yturbo_options');
|
29 |
if (!isset($yturbo_options['version'])){$yturbo_options['version']='1.00';update_option('yturbo_options',$yturbo_options);}
|
30 |
-
if ( $yturbo_options['version'] != '1.
|
31 |
yturbo_set_new_options();
|
32 |
}
|
33 |
}
|
@@ -182,7 +182,9 @@ function yturbo_set_new_options() {
|
|
182 |
}
|
183 |
//разбираем список и создаем нужные опции end
|
184 |
|
185 |
-
$yturbo_options['
|
|
|
|
|
186 |
update_option('yturbo_options', $yturbo_options);
|
187 |
}
|
188 |
//функция установки новых опций при обновлении плагина у пользователей end
|
@@ -190,7 +192,7 @@ function yturbo_set_new_options() {
|
|
190 |
//функция установки значений по умолчанию при активации плагина begin
|
191 |
function yturbo_init() {
|
192 |
$yturbo_options = array();
|
193 |
-
$yturbo_options['version'] = '1.
|
194 |
$yturbo_options['ytrssname'] = 'turbo';
|
195 |
$yturbo_options['yttitle'] = esc_html(yturbo_remove_emoji(strip_tags(get_bloginfo_rss('title'))));
|
196 |
$yturbo_options['ytlink'] = get_bloginfo_rss('url');
|
@@ -322,6 +324,8 @@ function yturbo_init() {
|
|
322 |
$yturbo_options['ytexcludeurlslist'] = '';
|
323 |
$yturbo_options['ytdeltracking'] = 'disabled';
|
324 |
|
|
|
|
|
325 |
$yturbo_options['required']='1.00';
|
326 |
|
327 |
add_option('yturbo_options', $yturbo_options);
|
@@ -654,6 +658,8 @@ if ( ! wp_verify_nonce( $_POST['yturbo_nonce'], plugin_basename(__FILE__) ) || !
|
|
654 |
$yturbo_options['ytexcludeurlslist'] = implode("\n", $lines);
|
655 |
if(isset($_POST['ytdeltracking'])){$yturbo_options['ytdeltracking'] = sanitize_text_field($_POST['ytdeltracking']);}else{$yturbo_options['ytdeltracking'] = 'disabled';}
|
656 |
|
|
|
|
|
657 |
update_option('yturbo_options', $yturbo_options);
|
658 |
|
659 |
yturbo_clear_transients();
|
@@ -877,6 +883,16 @@ if (closedonat == 'yes') {
|
|
877 |
</p>
|
878 |
|
879 |
<table class="form-table">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
880 |
<tr class="trbordertop">
|
881 |
<th class="tdcheckbox"><?php _e('Дата записей:', 'rss-for-yandex-turbo'); ?></th>
|
882 |
<td>
|
@@ -1462,7 +1478,7 @@ if (closedonat == 'yes') {
|
|
1462 |
<th class="tdcheckbox"><?php _e('Непрерывная лента статей:', 'rss-for-yandex-turbo'); ?></th>
|
1463 |
<td>
|
1464 |
<label for="ytrelatedinfinity"><input type="checkbox" value="enabled" name="ytrelatedinfinity" id="ytrelatedinfinity" <?php if ($yturbo_options['ytrelatedinfinity'] == 'enabled') echo 'checked="checked"'; ?> /><?php _e('Включить непрерывную ленту статей', 'rss-for-yandex-turbo'); ?></label>
|
1465 |
-
<br /><small><?php _e('Вместо обычного короткого списка похожих статей будет выводиться непрерывная лента из полных
|
1466 |
<?php _e('При включении непрерывной ленты статей вывод миниатюр для похожих записей будет отключен.', 'rss-for-yandex-turbo'); ?><br />
|
1467 |
</small>
|
1468 |
</td>
|
@@ -2273,6 +2289,11 @@ function yturbo_save_metabox( $post_id ) {
|
|
2273 |
$custom_template = esc_textarea($_POST['custom_template']);
|
2274 |
update_post_meta($post_id, 'custom_template', $custom_template);
|
2275 |
}
|
|
|
|
|
|
|
|
|
|
|
2276 |
}
|
2277 |
add_action( 'save_post', 'yturbo_save_metabox' );
|
2278 |
//сохраняем метабокс end
|
@@ -2329,6 +2350,9 @@ function yturbo_callback() {
|
|
2329 |
if ( $block_editor_enabled == true ) {
|
2330 |
$custom_template = wpautop( $custom_template );
|
2331 |
}
|
|
|
|
|
|
|
2332 |
?>
|
2333 |
|
2334 |
<p style="margin: 10px 0px 0px 1px!important;">
|
@@ -2394,6 +2418,15 @@ tt{padding: 1px 5px 1px;margin: 0 1px;background: #eaeaea;background: rgba(0, 0,
|
|
2394 |
<?php } ?>
|
2395 |
</p>
|
2396 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2397 |
<div style="margin:10px 0 5px 1px!important;">
|
2398 |
<label for="template_meta"><input type="checkbox" name="template_meta" id="template_meta" <?php if ($template_meta == 'yes') echo 'checked="checked"'; ?> /><?php _e('Задать индивидуальный шаблон для этой записи', 'rss-for-yandex-turbo'); ?></label><br />
|
2399 |
<div id="custom_template_op" class="foptions" style="margin:5px 0 0 0;margin-top:5px;<?php if ($template_meta != 'yes') echo 'display:none;'; ?>">
|
@@ -2644,6 +2677,15 @@ echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'.PHP_EO
|
|
2644 |
<link><?php the_permalink_rss(); ?></link>
|
2645 |
<turbo:topic><?php echo get_the_title_rss(); ?></turbo:topic>
|
2646 |
<turbo:source><?php the_permalink_rss(); ?></turbo:source>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2647 |
<?php if ($ytpostdate == 'enabled') : ?>
|
2648 |
<?php $gmt_offset = get_option('gmt_offset');
|
2649 |
$gmt_offset_abs = floor(abs($gmt_offset));
|
@@ -3754,9 +3796,8 @@ add_filter( 'yturbo_add_contents', 'yturbo_toc' );
|
|
3754 |
|
3755 |
//функция удаления эмоджи begin
|
3756 |
function yturbo_remove_emoji( $text ) {
|
3757 |
-
|
3758 |
-
$text = preg_replace(
|
3759 |
-
$text = str_replace(' ', ' ', $text);
|
3760 |
$text = trim($text);
|
3761 |
|
3762 |
return $text;
|
3 |
Plugin Name: RSS for Yandex Turbo
|
4 |
Plugin URI: https://wordpress.org/plugins/rss-for-yandex-turbo/
|
5 |
Description: Создание RSS-ленты для сервиса Яндекс.Турбо.
|
6 |
+
Version: 1.29
|
7 |
Author: Flector
|
8 |
Author URI: https://profiles.wordpress.org/flector#content-plugins
|
9 |
Text Domain: rss-for-yandex-turbo
|
27 |
function yturbo_check_version() {
|
28 |
$yturbo_options = get_option('yturbo_options');
|
29 |
if (!isset($yturbo_options['version'])){$yturbo_options['version']='1.00';update_option('yturbo_options',$yturbo_options);}
|
30 |
+
if ( $yturbo_options['version'] != '1.29' ) {
|
31 |
yturbo_set_new_options();
|
32 |
}
|
33 |
}
|
182 |
}
|
183 |
//разбираем список и создаем нужные опции end
|
184 |
|
185 |
+
if (!isset($yturbo_options['ytextendedhtml'])) {$yturbo_options['ytextendedhtml']='disabled';}
|
186 |
+
|
187 |
+
$yturbo_options['version'] = '1.29';
|
188 |
update_option('yturbo_options', $yturbo_options);
|
189 |
}
|
190 |
//функция установки новых опций при обновлении плагина у пользователей end
|
192 |
//функция установки значений по умолчанию при активации плагина begin
|
193 |
function yturbo_init() {
|
194 |
$yturbo_options = array();
|
195 |
+
$yturbo_options['version'] = '1.29';
|
196 |
$yturbo_options['ytrssname'] = 'turbo';
|
197 |
$yturbo_options['yttitle'] = esc_html(yturbo_remove_emoji(strip_tags(get_bloginfo_rss('title'))));
|
198 |
$yturbo_options['ytlink'] = get_bloginfo_rss('url');
|
324 |
$yturbo_options['ytexcludeurlslist'] = '';
|
325 |
$yturbo_options['ytdeltracking'] = 'disabled';
|
326 |
|
327 |
+
$yturbo_options['ytextendedhtml'] = 'disabled';
|
328 |
+
|
329 |
$yturbo_options['required']='1.00';
|
330 |
|
331 |
add_option('yturbo_options', $yturbo_options);
|
658 |
$yturbo_options['ytexcludeurlslist'] = implode("\n", $lines);
|
659 |
if(isset($_POST['ytdeltracking'])){$yturbo_options['ytdeltracking'] = sanitize_text_field($_POST['ytdeltracking']);}else{$yturbo_options['ytdeltracking'] = 'disabled';}
|
660 |
|
661 |
+
if(isset($_POST['ytextendedhtml'])){$yturbo_options['ytextendedhtml'] = sanitize_text_field($_POST['ytextendedhtml']);}else{$yturbo_options['ytextendedhtml'] = 'disabled';}
|
662 |
+
|
663 |
update_option('yturbo_options', $yturbo_options);
|
664 |
|
665 |
yturbo_clear_transients();
|
883 |
</p>
|
884 |
|
885 |
<table class="form-table">
|
886 |
+
<tr class="trbordertop">
|
887 |
+
<th class="tdcheckbox"><?php _e('Поддержка CSS:', 'rss-for-yandex-turbo'); ?></th>
|
888 |
+
<td>
|
889 |
+
<label for="ytextendedhtml"><input type="checkbox" value="enabled" name="ytextendedhtml" id="ytextendedhtml" <?php if ($yturbo_options['ytextendedhtml'] == 'enabled') echo 'checked="checked"'; ?> /><?php _e('Включить режим поддержки CSS', 'rss-for-yandex-turbo'); ?></label>
|
890 |
+
<br /><small><?php _e('При включении этой опции (<tt>turbo:extendedHtml</tt>) Яндекс не будет удалять классы и идентификаторы', 'rss-for-yandex-turbo'); ?> <br />
|
891 |
+
<?php _e('из разметки записей, что позволит настроить их внешний вид через CSS (читайте <a target="_blank" href="https://yandex.ru/dev/turbo/doc/rss/elements/custom.html">документацию</a>).', 'rss-for-yandex-turbo'); ?> <br />
|
892 |
+
<?php _e('Режим поддержки CSS можно включить или выключить для записей индивидуально (в метабоксе плагина).', 'rss-for-yandex-turbo'); ?> <br />
|
893 |
+
</small>
|
894 |
+
</td>
|
895 |
+
</tr>
|
896 |
<tr class="trbordertop">
|
897 |
<th class="tdcheckbox"><?php _e('Дата записей:', 'rss-for-yandex-turbo'); ?></th>
|
898 |
<td>
|
1478 |
<th class="tdcheckbox"><?php _e('Непрерывная лента статей:', 'rss-for-yandex-turbo'); ?></th>
|
1479 |
<td>
|
1480 |
<label for="ytrelatedinfinity"><input type="checkbox" value="enabled" name="ytrelatedinfinity" id="ytrelatedinfinity" <?php if ($yturbo_options['ytrelatedinfinity'] == 'enabled') echo 'checked="checked"'; ?> /><?php _e('Включить непрерывную ленту статей', 'rss-for-yandex-turbo'); ?></label>
|
1481 |
+
<br /><small><?php _e('Вместо обычного короткого списка похожих статей будет выводиться непрерывная лента из полных записей.', 'rss-for-yandex-turbo'); ?><br />
|
1482 |
<?php _e('При включении непрерывной ленты статей вывод миниатюр для похожих записей будет отключен.', 'rss-for-yandex-turbo'); ?><br />
|
1483 |
</small>
|
1484 |
</td>
|
2289 |
$custom_template = esc_textarea($_POST['custom_template']);
|
2290 |
update_post_meta($post_id, 'custom_template', $custom_template);
|
2291 |
}
|
2292 |
+
|
2293 |
+
if(isset($_POST['ytextendedhtmlmeta'])){
|
2294 |
+
$selected = $_POST['ytextendedhtmlmeta'];
|
2295 |
+
update_post_meta($post_id, 'ytextendedhtmlmeta', $selected);
|
2296 |
+
}
|
2297 |
}
|
2298 |
add_action( 'save_post', 'yturbo_save_metabox' );
|
2299 |
//сохраняем метабокс end
|
2350 |
if ( $block_editor_enabled == true ) {
|
2351 |
$custom_template = wpautop( $custom_template );
|
2352 |
}
|
2353 |
+
|
2354 |
+
$ytextendedhtmlmeta = get_post_meta($post->ID, 'ytextendedhtmlmeta', true);
|
2355 |
+
if (!$ytextendedhtmlmeta) {$ytextendedhtmlmeta = 'default';}
|
2356 |
?>
|
2357 |
|
2358 |
<p style="margin: 10px 0px 0px 1px!important;">
|
2418 |
<?php } ?>
|
2419 |
</p>
|
2420 |
|
2421 |
+
<p><?php _e('Поддержка CSS:', 'rss-for-yandex-turbo'); ?>
|
2422 |
+
<select name="ytextendedhtmlmeta">
|
2423 |
+
<option value="default" <?php if ($ytextendedhtmlmeta == 'default') echo 'selected="selected"'; ?>><?php _e('По умолчанию', 'rss-for-yandex-turbo'); ?></option>
|
2424 |
+
<option value="enabled" <?php if ($ytextendedhtmlmeta == 'enabled') echo 'selected="selected"'; ?>><?php _e('Включена', 'rss-for-yandex-turbo'); ?></option>
|
2425 |
+
<option value="disabled" <?php if ($ytextendedhtmlmeta == 'disabled') echo 'selected="selected"'; ?>><?php _e('Выключена', 'rss-for-yandex-turbo'); ?></option>
|
2426 |
+
</select>
|
2427 |
+
<small style="margin-top:5px;"><br /><?php _e('При выборе "По умолчанию" используются общие настройки плагина.', 'rss-for-yandex-turbo'); ?></small>
|
2428 |
+
</p>
|
2429 |
+
|
2430 |
<div style="margin:10px 0 5px 1px!important;">
|
2431 |
<label for="template_meta"><input type="checkbox" name="template_meta" id="template_meta" <?php if ($template_meta == 'yes') echo 'checked="checked"'; ?> /><?php _e('Задать индивидуальный шаблон для этой записи', 'rss-for-yandex-turbo'); ?></label><br />
|
2432 |
<div id="custom_template_op" class="foptions" style="margin:5px 0 0 0;margin-top:5px;<?php if ($template_meta != 'yes') echo 'display:none;'; ?>">
|
2677 |
<link><?php the_permalink_rss(); ?></link>
|
2678 |
<turbo:topic><?php echo get_the_title_rss(); ?></turbo:topic>
|
2679 |
<turbo:source><?php the_permalink_rss(); ?></turbo:source>
|
2680 |
+
<?php $ytextendedhtmlmeta = get_post_meta(get_the_ID(), 'ytextendedhtmlmeta', true);
|
2681 |
+
$ytextendedhtml = $yturbo_options['ytextendedhtml'];
|
2682 |
+
if ( ! $ytextendedhtmlmeta or $ytextendedhtmlmeta == 'default' ) {
|
2683 |
+
$temphtml = $ytextendedhtml;
|
2684 |
+
} else {
|
2685 |
+
$temphtml = $ytextendedhtmlmeta;
|
2686 |
+
}
|
2687 |
+
if ( $temphtml == 'enabled' ) { echo '<turbo:extendedHtml>true</turbo:extendedHtml>'.PHP_EOL;}
|
2688 |
+
?>
|
2689 |
<?php if ($ytpostdate == 'enabled') : ?>
|
2690 |
<?php $gmt_offset = get_option('gmt_offset');
|
2691 |
$gmt_offset_abs = floor(abs($gmt_offset));
|
3796 |
|
3797 |
//функция удаления эмоджи begin
|
3798 |
function yturbo_remove_emoji( $text ) {
|
3799 |
+
$emoji = '/[(\x{1F600}-\x{1F64F})|(\x{2700}-\x{27BF})|(\x{1F680}-\x{1F6FF})|(\x{24C2}-\x{1F251})|(\x{1F30D}-\x{1F567})|(\x{1F900}-\x{1F9FF})|(\x{1F300}-\x{1F5FF})]/mu';
|
3800 |
+
$text = preg_replace($emoji, '', $text);
|
|
|
3801 |
$text = trim($text);
|
3802 |
|
3803 |
return $text;
|