Yet Another Related Posts Plugin (YARPP) - Version 5.1.5

Version Description

(2020-05-11) = * Bugfix: Use correct deactivation reason code

Download this release

Release Info

Developer jeffparker
Plugin Icon 128x128 Yet Another Related Posts Plugin (YARPP)
Version 5.1.5
Comparing to
See all releases

Code changes from version 5.1.4 to 5.1.5

lib/plugin-deactivation-survey/deactivate-feedback-form.css CHANGED
@@ -99,4 +99,4 @@
99
.shareaholic-deactivate-dialog-footer {
100
text-align: right;
101
padding: 0 0 20px 0;
102
- }
99
.shareaholic-deactivate-dialog-footer {
100
text-align: right;
101
padding: 0 0 20px 0;
102
+ }
lib/plugin-deactivation-survey/deactivate-feedback-form.js CHANGED
@@ -1,20 +1,23 @@
1
(function($) {
2
-
3
- if(!window.shareaholic)
4
window.shareaholic = {};
5
-
6
- if(shareaholic.DeactivateFeedbackForm)
7
return;
8
-
9
shareaholic.DeactivateFeedbackForm = function(plugin)
10
{
11
- var self = this;
12
var strings = shareaholic_deactivate_feedback_form_strings;
13
-
14
this.plugin = plugin;
15
-
16
// Dialog HTML
17
- var element = $('\
18
<div id="shareaholic-deactivate-dialog" class="shareaholic-deactivate-dialog" data-remodal-id="' + plugin.basename + '">\
19
<div class="shareaholic-deactivate-header" style="background-image: url(' + plugin.logo + '); background-color: ' + plugin.bgcolor + ';"><div class="shareaholic-deactivate-text"><h2>' + strings.quick_feedback + '</h2></div></div>\
20
<div class="shareaholic-deactivate-body">\
@@ -41,130 +44,142 @@
41
</form>\
42
</div>\
43
</div>\
44
- ')[0];
45
this.element = element;
46
-
47
- $(element).find("input[name='plugin']").val(JSON.stringify(plugin));
48
-
49
- $(element).on("click", "input[name='reason']", function(event) {
50
- var submit_input = $(element).find("input[type='submit']");
51
- var comment_textarea = $(element).find('#shareaholic-deactivate-comment-area');
52
- if(self.plugin.reasons_needing_comment.indexOf(event.target.value) > -1){
53
- comment_textarea.appendTo($(event.target).parent().parent());
54
- comment_textarea.show();
55
- } else {
56
- comment_textarea.hide();
57
}
58
- submit_input.val(
59
- strings.submit_and_deactivate
60
- );
61
- self.maybeDisableSubmit();
62
- });
63
64
- $(element).find('textarea#shareaholic-deactivate-comment').keyup(function(){
65
- self.maybeDisableSubmit();
66
- });
67
68
- $(element).find("form").on("submit", function(event) {
69
- self.onSubmit(event);
70
- });
71
-
72
// Reasons list
73
- var ul = $(element).find("ul.shareaholic-deactivate-reasons");
74
- for(var key in plugin.reasons)
75
- {
76
- var li = $("<li><label><input type='radio' name='reason'/> <span></span></label></li>");
77
-
78
- $(li).find("input").val(key);
79
- $(li).find("span").html(plugin.reasons[key]);
80
-
81
- $(ul).append(li);
82
}
83
-
84
// Listen for deactivate
85
- $("#the-list [data-plugin='" + plugin.basename + "'] .deactivate>a").on("click", function(event) {
86
- self.onDeactivateClicked(event);
87
- });
88
}
89
90
shareaholic.DeactivateFeedbackForm.prototype.maybeDisableSubmit = function (){
91
- var submit_input = $("#shareaholic-deactivate-submit");
92
- var comment_textarea = $('textarea#shareaholic-deactivate-comment');
93
- var reason_value = $('input[name="reason"]:checked').val();
94
- if(this.plugin.reasons_needing_comment.indexOf(reason_value) > -1
95
- && comment_textarea.val().replace(/\s/g, '') === ''){
96
- submit_input.prop('disabled',true);
97
- submit_input.prop('title',shareaholic_deactivate_feedback_form_strings.please_tell_us);
98
} else {
99
- submit_input.prop('disabled',false);
100
- submit_input.prop('title','');
101
}
102
}
103
-
104
shareaholic.DeactivateFeedbackForm.prototype.onDeactivateClicked = function(event)
105
{
106
this.deactivateURL = event.target.href;
107
108
-
109
- if(!this.dialog)
110
- this.dialog = $(this.element).remodal();
111
this.dialog.open();
112
event.preventDefault();
113
}
114
-
115
shareaholic.DeactivateFeedbackForm.prototype.onSubmit = function(event)
116
{
117
- var element = this.element;
118
- var strings = shareaholic_deactivate_feedback_form_strings;
119
- var self = this;
120
- var data = this.plugin.send;
121
- data.survey_response={
122
contact:{
123
- email: $(element).find("input[name='email']").val()
124
},
125
type:'uninstall',
126
data:{
127
- reason_id: $(element).find("input[name='reason']").val(),
128
- reason_comment: $(element).find("textarea[name='comment']").val()
129
}
130
};
131
132
- $(element).find("button, input[type='submit']").prop("disabled", true);
133
- $(element).find("input[type='submit']").val(strings.please_wait);
134
- $(element).find("button, input[type='submit']").siblings('.spinner').addClass('is-active');
135
-
136
- if($(element).find("input[name='reason']:checked").length)
137
- {
138
- $.ajax({
139
- type: "POST",
140
- url: "https://" + this.plugin.api_server + "/api/plugin_surveys",
141
- data: JSON.stringify(data),
142
- contentType: 'application/json',
143
- dataType: 'json',
144
- success: function(response, textStatus) {
145
- window.location.href = self.deactivateURL;
146
- },
147
- error: function(response, textStatus, errorThrown) {
148
- window.location.href = self.deactivateURL;
149
- },
150
- });
151
- }
152
- else
153
- {
154
window.location.href = self.deactivateURL;
155
}
156
event.preventDefault();
157
return false;
158
}
159
-
160
- $(document).ready(function() {
161
-
162
- for(var i = 0; i < shareaholic_deactivate_feedback_form_plugins.length; i++)
163
- {
164
- var plugin = shareaholic_deactivate_feedback_form_plugins[i];
165
- new shareaholic.DeactivateFeedbackForm(plugin);
166
}
167
-
168
- });
169
-
170
- })(jQuery);
1
(function($) {
2
+
3
+ if ( ! window.shareaholic) {
4
window.shareaholic = {};
5
+ }
6
+
7
+ if (shareaholic.DeactivateFeedbackForm) {
8
return;
9
+ }
10
+
11
shareaholic.DeactivateFeedbackForm = function(plugin)
12
{
13
+ var self = this;
14
var strings = shareaholic_deactivate_feedback_form_strings;
15
+
16
this.plugin = plugin;
17
+
18
// Dialog HTML
19
+ var element = $(
20
+ '\
21
<div id="shareaholic-deactivate-dialog" class="shareaholic-deactivate-dialog" data-remodal-id="' + plugin.basename + '">\
22
<div class="shareaholic-deactivate-header" style="background-image: url(' + plugin.logo + '); background-color: ' + plugin.bgcolor + ';"><div class="shareaholic-deactivate-text"><h2>' + strings.quick_feedback + '</h2></div></div>\
23
<div class="shareaholic-deactivate-body">\
44
</form>\
45
</div>\
46
</div>\
47
+ '
48
+ )[0];
49
this.element = element;
50
+
51
+ $( element ).find( "input[name='plugin']" ).val( JSON.stringify( plugin ) );
52
+
53
+ $( element ).on(
54
+ "click",
55
+ "input[name='reason']",
56
+ function(event) {
57
+ var submit_input = $( element ).find( "input[type='submit']" );
58
+ var comment_textarea = $( element ).find( '#shareaholic-deactivate-comment-area' );
59
+ if (self.plugin.reasons_needing_comment.indexOf( event.target.value ) > -1) {
60
+ comment_textarea.appendTo( $( event.target ).parent().parent() );
61
+ comment_textarea.show();
62
+ } else {
63
+ comment_textarea.hide();
64
+ }
65
+ submit_input.val(
66
+ strings.submit_and_deactivate
67
+ );
68
+ self.maybeDisableSubmit();
69
}
70
+ );
71
+
72
+ $( element ).find( 'textarea#shareaholic-deactivate-comment' ).keyup(
73
+ function(){
74
+ self.maybeDisableSubmit();
75
+ }
76
+ );
77
78
+ $( element ).find( "form" ).on(
79
+ "submit",
80
+ function(event) {
81
+ self.onSubmit( event );
82
+ }
83
+ );
84
85
// Reasons list
86
+ var ul = $( element ).find( "ul.shareaholic-deactivate-reasons" );
87
+ for (var key in plugin.reasons) {
88
+ var li = $( "<li><label><input type='radio' name='reason'/> <span></span></label></li>" );
89
+
90
+ $( li ).find( "input" ).val( key );
91
+ $( li ).find( "span" ).html( plugin.reasons[key] );
92
+
93
+ $( ul ).append( li );
94
}
95
+
96
// Listen for deactivate
97
+ $( "#the-list [data-plugin='" + plugin.basename + "'] .deactivate>a" ).on(
98
+ "click",
99
+ function(event) {
100
+ self.onDeactivateClicked( event );
101
+ }
102
+ );
103
}
104
105
shareaholic.DeactivateFeedbackForm.prototype.maybeDisableSubmit = function (){
106
+ var submit_input = $( "#shareaholic-deactivate-submit" );
107
+ var comment_textarea = $( 'textarea#shareaholic-deactivate-comment' );
108
+ var reason_value = $( 'input[name="reason"]:checked' ).val();
109
+ if (this.plugin.reasons_needing_comment.indexOf( reason_value ) > -1
110
+ && comment_textarea.val().replace( /\s/g, '' ) === '') {
111
+ submit_input.prop( 'disabled',true );
112
+ submit_input.prop( 'title',shareaholic_deactivate_feedback_form_strings.please_tell_us );
113
} else {
114
+ submit_input.prop( 'disabled',false );
115
+ submit_input.prop( 'title','' );
116
}
117
}
118
+
119
shareaholic.DeactivateFeedbackForm.prototype.onDeactivateClicked = function(event)
120
{
121
this.deactivateURL = event.target.href;
122
123
+ if ( ! this.dialog) {
124
+ this.dialog = $( this.element ).remodal();
125
+ }
126
this.dialog.open();
127
event.preventDefault();
128
}
129
+
130
shareaholic.DeactivateFeedbackForm.prototype.onSubmit = function(event)
131
{
132
+ var element = this.element;
133
+ var strings = shareaholic_deactivate_feedback_form_strings;
134
+ var self = this;
135
+ var data = this.plugin.send;
136
+ data.survey_response = {
137
contact:{
138
+ email: $( element ).find( "input[name='email']" ).val()
139
},
140
type:'uninstall',
141
data:{
142
+ reason_id: $( element ).find( "input[name='reason']:checked" ).val(),
143
+ reason_comment: $( element ).find( "textarea[name='comment']" ).val()
144
}
145
};
146
147
+ $( element ).find( "button, input[type='submit']" ).prop( "disabled", true );
148
+ $( element ).find( "input[type='submit']" ).val( strings.please_wait );
149
+ $( element ).find( "button, input[type='submit']" ).siblings( '.spinner' ).addClass( 'is-active' );
150
+
151
+ if ($( element ).find( "input[name='reason']:checked" ).length) {
152
+ $.ajax(
153
+ {
154
+ type: "POST",
155
+ url: "https://" + this.plugin.api_server + "/api/plugin_surveys",
156
+ data: JSON.stringify( data ),
157
+ contentType: 'application/json',
158
+ dataType: 'json',
159
+ success: function(response, textStatus) {
160
+ window.location.href = self.deactivateURL;
161
+ },
162
+ error: function(response, textStatus, errorThrown) {
163
+ window.location.href = self.deactivateURL;
164
+ },
165
+ }
166
+ );
167
+ } else {
168
window.location.href = self.deactivateURL;
169
}
170
event.preventDefault();
171
return false;
172
}
173
+
174
+ $( document ).ready(
175
+ function() {
176
+
177
+ for (var i = 0; i < shareaholic_deactivate_feedback_form_plugins.length; i++) {
178
+ var plugin = shareaholic_deactivate_feedback_form_plugins[i];
179
+ new shareaholic.DeactivateFeedbackForm( plugin );
180
+ }
181
+
182
}
183
+ );
184
+
185
+ })( jQuery );
lib/plugin-deactivation-survey/deactivate-feedback-form.php CHANGED
@@ -1,13 +1,15 @@
1
<?php
2
- if(!is_admin())
3
return;
4
5
global $pagenow;
6
7
- if($pagenow != "plugins.php")
8
return;
9
10
- if(! function_exists('shareaholic_deactivate_feedback')) {
11
function shareaholic_deactivate_feedback() {
12
// Plugins
13
/**
@@ -16,19 +18,27 @@ if(! function_exists('shareaholic_deactivate_feedback')) {
16
*/
17
$plugins = apply_filters( 'shareaholic_deactivate_feedback_form_plugins', array() );
18
19
- if(! $plugins){
20
return;
21
}
22
23
// Enqueue scripts
24
wp_enqueue_script( 'remodal', plugin_dir_url( __FILE__ ) . 'remodal.min.js', array(), '1.1.1' );
25
wp_enqueue_style( 'remodal', plugin_dir_url( __FILE__ ) . 'remodal.css', array(), '1.1.1' );
26
- wp_enqueue_style( 'remodal-default-theme', plugin_dir_url( __FILE__ ) . 'remodal-default-theme.css', array(), YARPP_VERSION );
27
28
- wp_enqueue_script( 'shareaholic-deactivate-feedback-form',
29
- plugin_dir_url( __FILE__ ) . 'deactivate-feedback-form.js', array(), YARPP_VERSION );
30
- wp_enqueue_style( 'shareaholic-deactivate-feedback-form',
31
- plugin_dir_url( __FILE__ ) . 'deactivate-feedback-form.css', array(), YARPP_VERSION );
32
33
$current_user = wp_get_current_user();
34
if ( $current_user instanceof WP_User && $current_user->ID ) {
@@ -40,20 +50,22 @@ if(! function_exists('shareaholic_deactivate_feedback')) {
40
// Localized strings
41
wp_localize_script(
42
'shareaholic-deactivate-feedback-form',
43
- 'shareaholic_deactivate_feedback_form_strings',
44
- array_merge(
45
- $plugins[0]->translations,
46
- array(
47
- 'email' => $email,
48
- )
49
- )
50
- );
51
52
// Send plugin data
53
- wp_localize_script( 'shareaholic-deactivate-feedback-form',
54
- 'shareaholic_deactivate_feedback_form_plugins',
55
- $plugins );
56
}
57
}
58
59
- add_action('admin_enqueue_scripts', 'shareaholic_deactivate_feedback');
1
<?php
2
+ if ( ! is_admin() ) {
3
return;
4
+ }
5
6
global $pagenow;
7
8
+ if ( $pagenow != 'plugins.php' ) {
9
return;
10
+ }
11
12
+ if ( ! function_exists( 'shareaholic_deactivate_feedback' ) ) {
13
function shareaholic_deactivate_feedback() {
14
// Plugins
15
/**
18
*/
19
$plugins = apply_filters( 'shareaholic_deactivate_feedback_form_plugins', array() );
20
21
+ if ( ! $plugins ) {
22
return;
23
}
24
25
// Enqueue scripts
26
wp_enqueue_script( 'remodal', plugin_dir_url( __FILE__ ) . 'remodal.min.js', array(), '1.1.1' );
27
wp_enqueue_style( 'remodal', plugin_dir_url( __FILE__ ) . 'remodal.css', array(), '1.1.1' );
28
+ wp_enqueue_style( 'remodal-default-theme', plugin_dir_url( __FILE__ ) . 'remodal-default-theme.css', array(), '1.1.1' );
29
30
+ wp_enqueue_script(
31
+ 'shareaholic-deactivate-feedback-form',
32
+ plugin_dir_url( __FILE__ ) . 'deactivate-feedback-form.js',
33
+ array(),
34
+ '1.1.1'
35
+ );
36
+ wp_enqueue_style(
37
+ 'shareaholic-deactivate-feedback-form',
38
+ plugin_dir_url( __FILE__ ) . 'deactivate-feedback-form.css',
39
+ array(),
40
+ '1.1.1'
41
+ );
42
43
$current_user = wp_get_current_user();
44
if ( $current_user instanceof WP_User && $current_user->ID ) {
50
// Localized strings
51
wp_localize_script(
52
'shareaholic-deactivate-feedback-form',
53
+ 'shareaholic_deactivate_feedback_form_strings',
54
+ array_merge(
55
+ $plugins[0]->translations,
56
+ array(
57
+ 'email' => $email,
58
+ )
59
+ )
60
+ );
61
62
// Send plugin data
63
+ wp_localize_script(
64
+ 'shareaholic-deactivate-feedback-form',
65
+ 'shareaholic_deactivate_feedback_form_plugins',
66
+ $plugins
67
+ );
68
}
69
}
70
71
+ add_action( 'admin_enqueue_scripts', 'shareaholic_deactivate_feedback' );
lib/plugin-deactivation-survey/remodal-default-theme.css CHANGED
@@ -180,109 +180,109 @@
180
181
@-webkit-keyframes remodal-opening-keyframes {
182
from {
183
- -webkit-transform: scale(1.05);
184
- transform: scale(1.05);
185
186
- opacity: 0;
187
}
188
to {
189
- -webkit-transform: none;
190
- transform: none;
191
192
- opacity: 1;
193
194
- -webkit-filter: blur(0);
195
- filter: blur(0);
196
}
197
}
198
199
@keyframes remodal-opening-keyframes {
200
from {
201
- -webkit-transform: scale(1.05);
202
- transform: scale(1.05);
203
204
- opacity: 0;
205
}
206
to {
207
- -webkit-transform: none;
208
- transform: none;
209
210
- opacity: 1;
211
212
- -webkit-filter: blur(0);
213
- filter: blur(0);
214
}
215
}
216
217
@-webkit-keyframes remodal-closing-keyframes {
218
from {
219
- -webkit-transform: scale(1);
220
- transform: scale(1);
221
222
- opacity: 1;
223
}
224
to {
225
- -webkit-transform: scale(0.95);
226
- transform: scale(0.95);
227
228
- opacity: 0;
229
230
- -webkit-filter: blur(0);
231
- filter: blur(0);
232
}
233
}
234
235
@keyframes remodal-closing-keyframes {
236
from {
237
- -webkit-transform: scale(1);
238
- transform: scale(1);
239
240
- opacity: 1;
241
}
242
to {
243
- -webkit-transform: scale(0.95);
244
- transform: scale(0.95);
245
246
- opacity: 0;
247
248
- -webkit-filter: blur(0);
249
- filter: blur(0);
250
}
251
}
252
253
@-webkit-keyframes remodal-overlay-opening-keyframes {
254
from {
255
- opacity: 0;
256
}
257
to {
258
- opacity: 1;
259
}
260
}
261
262
@keyframes remodal-overlay-opening-keyframes {
263
from {
264
- opacity: 0;
265
}
266
to {
267
- opacity: 1;
268
}
269
}
270
271
@-webkit-keyframes remodal-overlay-closing-keyframes {
272
from {
273
- opacity: 1;
274
}
275
to {
276
- opacity: 0;
277
}
278
}
279
280
@keyframes remodal-overlay-closing-keyframes {
281
from {
282
- opacity: 1;
283
}
284
to {
285
- opacity: 0;
286
}
287
}
288
@@ -291,7 +291,7 @@
291
292
@media only screen and (min-width: 641px) {
293
.remodal {
294
- max-width: 550px;
295
}
296
}
297
180
181
@-webkit-keyframes remodal-opening-keyframes {
182
from {
183
+ -webkit-transform: scale(1.05);
184
+ transform: scale(1.05);
185
186
+ opacity: 0;
187
}
188
to {
189
+ -webkit-transform: none;
190
+ transform: none;
191
192
+ opacity: 1;
193
194
+ -webkit-filter: blur(0);
195
+ filter: blur(0);
196
}
197
}
198
199
@keyframes remodal-opening-keyframes {
200
from {
201
+ -webkit-transform: scale(1.05);
202
+ transform: scale(1.05);
203
204
+ opacity: 0;
205
}
206
to {
207
+ -webkit-transform: none;
208
+ transform: none;
209
210
+ opacity: 1;
211
212
+ -webkit-filter: blur(0);
213
+ filter: blur(0);
214
}
215
}
216
217
@-webkit-keyframes remodal-closing-keyframes {
218
from {
219
+ -webkit-transform: scale(1);
220
+ transform: scale(1);
221
222
+ opacity: 1;
223
}
224
to {
225
+ -webkit-transform: scale(0.95);
226
+ transform: scale(0.95);
227
228
+ opacity: 0;
229
230
+ -webkit-filter: blur(0);
231
+ filter: blur(0);
232
}
233
}
234
235
@keyframes remodal-closing-keyframes {
236
from {
237
+ -webkit-transform: scale(1);
238
+ transform: scale(1);
239
240
+ opacity: 1;
241
}
242
to {
243
+ -webkit-transform: scale(0.95);
244
+ transform: scale(0.95);
245
246
+ opacity: 0;
247
248
+ -webkit-filter: blur(0);
249
+ filter: blur(0);
250
}
251
}
252
253
@-webkit-keyframes remodal-overlay-opening-keyframes {
254
from {
255
+ opacity: 0;
256
}
257
to {
258
+ opacity: 1;
259
}
260
}
261
262
@keyframes remodal-overlay-opening-keyframes {
263
from {
264
+ opacity: 0;
265
}
266
to {
267
+ opacity: 1;
268
}
269
}
270
271
@-webkit-keyframes remodal-overlay-closing-keyframes {
272
from {
273
+ opacity: 1;
274
}
275
to {
276
+ opacity: 0;
277
}
278
}
279
280
@keyframes remodal-overlay-closing-keyframes {
281
from {
282
+ opacity: 1;
283
}
284
to {
285
+ opacity: 0;
286
}
287
}
288
291
292
@media only screen and (min-width: 641px) {
293
.remodal {
294
+ max-width: 550px;
295
}
296
}
297
lib/plugin-deactivation-survey/remodal.css CHANGED
@@ -91,5 +91,3 @@ html.remodal-is-locked {
91
/* Disable Anti-FOUC */
92
display: inline-block;
93
}
94
-
95
-
91
/* Disable Anti-FOUC */
92
display: inline-block;
93
}
readme.txt CHANGED
@@ -5,7 +5,7 @@ Requires at least: 3.7
5
Requires PHP: 5.3
6
License: GPLv2 or later
7
Tested up to: 5.4
8
- Stable tag: 5.1.4
9
10
Display a list of related posts on your site based on a powerful unique algorithm. Optionally, earn money by including sponsored content.
11
@@ -262,6 +262,9 @@ add_action(
262
`
263
264
== Changelog ==
265
= 5.1.4 (2020-05-11) =
266
* Require PHP 5.3 as a bare minimum for compatibility features
267
* New: Display optional feedback form on plugin deactivation
@@ -928,6 +931,6 @@ After a break of many years, the plugin is 100% supported now that the baton has
928
* Initial upload
929
930
== Upgrade Notice ==
931
- = 5.1.4 =
932
We update this plugin regularly so we can make it better for you. Update to the latest version for all of the available features and improvements. Thank you for using YARPP!
933
5
Requires PHP: 5.3
6
License: GPLv2 or later
7
Tested up to: 5.4
8
+ Stable tag: 5.1.5
9
10
Display a list of related posts on your site based on a powerful unique algorithm. Optionally, earn money by including sponsored content.
11
262
`
263
264
== Changelog ==
265
+ = 5.1.5 (2020-05-11) =
266
+ * Bugfix: Use correct deactivation reason code
267
+
268
= 5.1.4 (2020-05-11) =
269
* Require PHP 5.3 as a bare minimum for compatibility features
270
* New: Display optional feedback form on plugin deactivation
931
* Initial upload
932
933
== Upgrade Notice ==
934
+ = 5.1.5 =
935
We update this plugin regularly so we can make it better for you. Update to the latest version for all of the available features and improvements. Thank you for using YARPP!
936
yarpp.php CHANGED
@@ -2,7 +2,7 @@
2
/*
3
Plugin Name: Yet Another Related Posts Plugin (YARPP)
4
Description: Adds related posts to your site and in RSS feeds, based on a powerful, customizable algorithm.
5
- Version: 5.1.4
6
Author: YARPP
7
Author URI: https://yarpp.com/
8
Plugin URI: https://yarpp.com/
@@ -23,7 +23,7 @@ if(!defined('WP_CONTENT_DIR')){
23
define('WP_CONTENT_DIR', substr($tr,0,strrpos($tr,'/')));
24
}
25
26
- define('YARPP_VERSION', '5.1.4');
27
28
define('YARPP_DIR', dirname(__FILE__));
29
define('YARPP_URL', plugins_url('',__FILE__));
2
/*
3
Plugin Name: Yet Another Related Posts Plugin (YARPP)
4
Description: Adds related posts to your site and in RSS feeds, based on a powerful, customizable algorithm.
5
+ Version: 5.1.5
6
Author: YARPP
7
Author URI: https://yarpp.com/
8
Plugin URI: https://yarpp.com/
23
define('WP_CONTENT_DIR', substr($tr,0,strrpos($tr,'/')));
24
}
25
26
+ define('YARPP_VERSION', '5.1.5');
27
28
define('YARPP_DIR', dirname(__FILE__));
29
define('YARPP_URL', plugins_url('',__FILE__));