Skip to content

Commit 5e9a6f2

Browse files
committed
Merge branch 'develop' into filip/v19/filter-out-providers-by-cap
1 parent f9e4475 commit 5e9a6f2

116 files changed

Lines changed: 6472 additions & 783 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/ISSUE_TEMPLATE/new-task-recommendation.yml

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -28,28 +28,6 @@ body:
2828
validations:
2929
required: true
3030

31-
- type: dropdown
32-
id: category
33-
attributes:
34-
label: Recommendation category
35-
description: Select the most appropriate category for this recommendation
36-
options:
37-
- content-update
38-
- configuration
39-
- user
40-
- other
41-
validations:
42-
required: true
43-
44-
- type: input
45-
id: other_category
46-
attributes:
47-
label: Other category
48-
description: If you selected "other", please specify the category
49-
placeholder: "Specify the category"
50-
validations:
51-
required: false
52-
5331
- type: input
5432
id: capability
5533
attributes:

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
11
= 1.9.0 =
22

3+
In this release we've added an integration with the **All In One Seo** plugin so you’ll now see personalized suggestions based on your current SEO configuration.
4+
5+
Added these recommendations from Ravi:
6+
7+
* All In One SEO: [noindex the author archive](https://prpl.fyi/aioseo-author-archive)
8+
* All In One SEO: [noindex the date archive](https://prpl.fyi/aioseo-date-archive)
9+
* All In One SEO: [Remove post authors feeds](https://prpl.fyi/aioseo-crawl-optimization-feed-authors)
10+
* All In One SEO: [Remove comment feeds](https://prpl.fyi/aioseo-crawl-optimization-feed-comments)
11+
* All In One SEO: [disable the media pages](https://prpl.fyi/aioseo-media-pages)
12+
* All In One SEO: set your [organization](https://prpl.fyi/aioseo-organization-logo) or [person](https://prpl.fyi/aioseo-person-logo) logo
13+
314
Enhancements:
415

516
* Add "Show all Recommendations" button to the "Ravi's Recommendations" widget

assets/css/admin.css

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,10 @@ button.prpl-info-icon {
177177
flex-wrap: wrap;
178178
justify-content: space-between;
179179
align-items: center;
180+
181+
.prpl-header-logo img {
182+
height: 100px;
183+
}
180184
}
181185

182186
.prpl-header-logo svg {

assets/css/page-widgets/suggested-tasks.css

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,26 @@
2828

2929
.prpl-show-all-tasks {
3030
display: none;
31+
32+
.prpl-toggle-all-recommendations-button {
33+
background: none;
34+
border: none;
35+
padding: 0;
36+
color: var(--wp-admin-theme-color, #2271b1);
37+
text-decoration: underline;
38+
cursor: pointer;
39+
font-size: inherit;
40+
font-family: inherit;
41+
42+
&:hover {
43+
color: var(--wp-admin-theme-color-darker-10, #135e96);
44+
}
45+
46+
&:disabled {
47+
opacity: 0.6;
48+
cursor: not-allowed;
49+
}
50+
}
3151
}
3252

3353
&:has(.prpl-suggested-tasks-list li) {
@@ -220,13 +240,16 @@
220240
border: 1px solid var(--prpl-color-border);
221241
}
222242

223-
.prpl-button-step {
243+
.prpl-button-step,
244+
.prpl-button {
224245
padding: 0.75rem 1.25rem;
246+
margin: 1rem 0;
225247
border: none;
226248
color: var(--prpl-color-text);
227249
font-weight: 600;
228250
border-radius: var(--prpl-border-radius);
229251
background-color: var(--prpl-background-banner);
252+
cursor: pointer;
230253

231254
/* WIP: pick exact color */
232255
transition: all 0.25s ease-in-out;
@@ -237,7 +260,7 @@
237260
display: block;
238261
width: 100%;
239262
height: 100%;
240-
background: var(--prpl-background-banner);
263+
background: var(--prpl-background-banner) !important;
241264

242265
/* WIP: pick exact color */
243266
position: absolute;
@@ -424,6 +447,7 @@
424447

425448
.prpl-button {
426449
cursor: pointer;
450+
margin: 0;
427451

428452
/* If the button has empty data-action attribute disable it. */
429453
&[data-action=""] {
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/* global prplInteractiveTaskFormListener, progressPlanner */
2+
3+
/*
4+
* All in One SEO: noindex the author archive.
5+
*
6+
* Dependencies: progress-planner/recommendations/interactive-task
7+
*/
8+
9+
prplInteractiveTaskFormListener.customSubmit( {
10+
taskId: 'aioseo-author-archive',
11+
popoverId: 'prpl-popover-aioseo-author-archive',
12+
callback: () => {
13+
fetch( progressPlanner.ajaxUrl, {
14+
method: 'POST',
15+
headers: {
16+
'Content-Type': 'application/x-www-form-urlencoded',
17+
},
18+
body: new URLSearchParams( {
19+
action: 'prpl_interactive_task_submit_aioseo-author-archive',
20+
nonce: progressPlanner.nonce,
21+
} ),
22+
} );
23+
},
24+
} );
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/* global prplInteractiveTaskFormListener, progressPlanner */
2+
3+
/*
4+
* All in One SEO: disable author RSS feeds.
5+
*
6+
* Dependencies: progress-planner/recommendations/interactive-task
7+
*/
8+
9+
prplInteractiveTaskFormListener.customSubmit( {
10+
taskId: 'aioseo-crawl-settings-feed-authors',
11+
popoverId: 'prpl-popover-aioseo-crawl-settings-feed-authors',
12+
callback: () => {
13+
fetch( progressPlanner.ajaxUrl, {
14+
method: 'POST',
15+
headers: {
16+
'Content-Type': 'application/x-www-form-urlencoded',
17+
},
18+
body: new URLSearchParams( {
19+
action: 'prpl_interactive_task_submit_aioseo-crawl-settings-feed-authors',
20+
nonce: progressPlanner.nonce,
21+
} ),
22+
} );
23+
},
24+
} );
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/* global prplInteractiveTaskFormListener, progressPlanner */
2+
3+
/*
4+
* All in One SEO: disable global comment RSS feeds.
5+
*
6+
* Dependencies: progress-planner/recommendations/interactive-task
7+
*/
8+
9+
prplInteractiveTaskFormListener.customSubmit( {
10+
taskId: 'aioseo-crawl-settings-feed-comments',
11+
popoverId: 'prpl-popover-aioseo-crawl-settings-feed-comments',
12+
callback: () => {
13+
fetch( progressPlanner.ajaxUrl, {
14+
method: 'POST',
15+
headers: {
16+
'Content-Type': 'application/x-www-form-urlencoded',
17+
},
18+
body: new URLSearchParams( {
19+
action: 'prpl_interactive_task_submit_aioseo-crawl-settings-feed-comments',
20+
nonce: progressPlanner.nonce,
21+
} ),
22+
} );
23+
},
24+
} );
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/* global prplInteractiveTaskFormListener, progressPlanner */
2+
3+
/*
4+
* All in One SEO: noindex the date archive.
5+
*
6+
* Dependencies: progress-planner/recommendations/interactive-task
7+
*/
8+
9+
prplInteractiveTaskFormListener.customSubmit( {
10+
taskId: 'aioseo-date-archive',
11+
popoverId: 'prpl-popover-aioseo-date-archive',
12+
callback: () => {
13+
fetch( progressPlanner.ajaxUrl, {
14+
method: 'POST',
15+
headers: {
16+
'Content-Type': 'application/x-www-form-urlencoded',
17+
},
18+
body: new URLSearchParams( {
19+
action: 'prpl_interactive_task_submit_aioseo-date-archive',
20+
nonce: progressPlanner.nonce,
21+
} ),
22+
} );
23+
},
24+
} );
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/* global prplInteractiveTaskFormListener, progressPlanner */
2+
3+
/*
4+
* All in One SEO: redirect media pages.
5+
*
6+
* Dependencies: progress-planner/recommendations/interactive-task
7+
*/
8+
9+
prplInteractiveTaskFormListener.customSubmit( {
10+
taskId: 'aioseo-media-pages',
11+
popoverId: 'prpl-popover-aioseo-media-pages',
12+
callback: () => {
13+
fetch( progressPlanner.ajaxUrl, {
14+
method: 'POST',
15+
headers: {
16+
'Content-Type': 'application/x-www-form-urlencoded',
17+
},
18+
body: new URLSearchParams( {
19+
action: 'prpl_interactive_task_submit_aioseo-media-pages',
20+
nonce: progressPlanner.nonce,
21+
} ),
22+
} );
23+
},
24+
} );
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
/* global prplInteractiveTaskFormListener, prplDocumentReady, progressPlanner */
2+
3+
/*
4+
* Set the permalink structure.
5+
*
6+
* Dependencies: progress-planner/recommendations/interactive-task, progress-planner/document-ready
7+
*/
8+
9+
prplInteractiveTaskFormListener.customSubmit( {
10+
taskId: 'core-permalink-structure',
11+
popoverId: 'prpl-popover-core-permalink-structure',
12+
callback: () => {
13+
const customPermalinkStructure = document.querySelector(
14+
'#prpl-popover-core-permalink-structure input[name="prpl_custom_permalink_structure"]'
15+
);
16+
17+
fetch( progressPlanner.ajaxUrl, {
18+
method: 'POST',
19+
headers: {
20+
'Content-Type': 'application/x-www-form-urlencoded',
21+
},
22+
body: new URLSearchParams( {
23+
action: 'prpl_interactive_task_submit_core-permalink-structure',
24+
nonce: progressPlanner.nonce,
25+
value: customPermalinkStructure.value,
26+
} ),
27+
} );
28+
},
29+
} );
30+
31+
prplDocumentReady( () => {
32+
// Handle custom date format input, this value is what is actually submitted to the server.
33+
const customPermalinkStructureInput = document.querySelector(
34+
'#prpl-popover-core-permalink-structure input[name="prpl_custom_permalink_structure"]'
35+
);
36+
37+
// If there is no custom permalink structure input, return.
38+
if ( ! customPermalinkStructureInput ) {
39+
return;
40+
}
41+
42+
// Handle date format radio button clicks.
43+
document
44+
.querySelectorAll(
45+
'#prpl-popover-core-permalink-structure input[name="prpl_permalink_structure"]'
46+
)
47+
.forEach( function ( input ) {
48+
input.addEventListener( 'click', function () {
49+
// Dont update the custom permalink structure input if the custom radio button is checked.
50+
if ( 'prpl_permalink_structure_custom_radio' !== this.id ) {
51+
customPermalinkStructureInput.value = this.value;
52+
}
53+
} );
54+
} );
55+
56+
// If users clicks on the custom permalink structure input, check the custom radio button.
57+
customPermalinkStructureInput.addEventListener( 'click', function () {
58+
document.getElementById(
59+
'prpl_permalink_structure_custom_radio'
60+
).checked = true;
61+
} );
62+
} );

0 commit comments

Comments
 (0)