Changeset 14974
- Timestamp:
- 07/15/2026 10:29:43 PM (4 weeks ago)
- Location:
- sites/trunk/wordpress.org/public_html/wp-content
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
sites/trunk/wordpress.org/public_html/wp-content/plugins/plugin-directory/shortcodes/class-upload.php
r14770 r14974 141 141 <?php 142 142 if ( 1 === (int) $plugins->new ) { 143 esc_html_e( 'Currently there is 1 plugin awaiting review.', 'wporg-plugins' );143 esc_html_e( 'Currently there is 1 plugin awaiting its first review.', 'wporg-plugins' ); 144 144 } else { 145 145 printf( 146 146 /* translators: %s: Amount of plugins awaiting review. */ 147 147 esc_html( _n( 148 'Currently there is %s plugin awaiting review.',149 'Currently there are %s plugins awaiting review.',148 'Currently there is %s plugin awaiting their first review.', 149 'Currently there are %s plugins awaiting their first review.', 150 150 $plugins->new, 151 151 'wporg-plugins' … … 160 160 /* translators: %s: Date of the oldest new plugin in the queue, with a 36 hours offset. */ 161 161 esc_html( __( 162 'All plugins that have been submitted before %s have received an initial response by email to their submission.',162 'All new submissions received before %s have been sent an initial response by email.', 163 163 'wporg-plugins' 164 164 ) ), … … 450 450 <input type="hidden" name="action" value="upload"/> 451 451 452 <h3><?php esc_html_e( 'Please, read and check the following before uploading your plugin', 'wporg-plugins' ); ?></h3> 453 454 <p> 455 <label> 456 <input type="checkbox" name="requirements[faq]" required="required"> 457 <?php 458 printf( 459 __( 'I have read the <a href="%s">Frequently Asked Questions</a>.', 'wporg-plugins' ), 460 'https://developer.wordpress.org/plugins/wordpress-org/plugin-developer-faq/' 461 ); 462 ?> 463 </label> 464 <br> 465 <label> 466 <input type="checkbox" name="requirements[guidelines]" required="required"> 467 <?php 468 printf( 469 __( 'This plugin complies with all of the <a href="%s">Plugin Developer Guidelines</a>.', 'wporg-plugins' ), 470 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/' 471 ); 472 ?> 473 </label> 474 <br> 475 <label> 476 <input type="checkbox" name="requirements[author]" required="required"> 477 <?php _e( 'I have permission to upload this plugin to WordPress.org for others to use and share.', 'wporg-plugins' ); ?> 478 </label> 479 <br> 480 <label> 481 <input type="checkbox" name="requirements[license]" required="required"> 482 <?php _e( 'This plugin, all included libraries, and any other included assets are licenced as GPL or are under a GPL compatible license.', 'wporg-plugins' ); ?> 483 </label> 484 <br> 485 <label> 486 <input type="checkbox" name="requirements[plugin-check]" required="required" /> 487 <?php 488 printf( 489 /* Translators: URL to plugin-check plugin */ 490 __( 'I confirm that the plugin has been tested with the <a href="%s">Plugin Check</a> plugin, and all indicated issues resolved (apart from what I believe to be false-positives).', 'wporg-plugins' ), 491 home_url( '/plugin-check/' ) 492 ); 493 ?> 494 </label> 495 </p> 496 497 <h3><?php esc_html_e( 'Plugin Naming', 'wporg-plugins' ); ?></h3> 498 <p><?php echo wp_kses_post( __( '<strong>Generic names</strong> that <strong>resemble existing plugins in the directory</strong> (e.g., “AI Writer”, “Image Optimization”) won’t be accepted, even if the slug is available.', 'wporg-plugins' ) ); ?></p> 499 <p><?php echo wp_kses_post( __( 'Instead, please <strong>start your plugin name with a unique or coined term</strong>, such as your brand, alias, or organization name (e.g., “Acme AI Writer”, “WriteralAI - AI Writter”, “Acme Image Optimization”, “Imageralia - Image Optimization”).', 'wporg-plugins' ) ); ?></p> 500 501 <h3><?php esc_html_e( 'Plugin Ownership', 'wporg-plugins' ); ?></h3> 452 <h2><?php esc_html_e( 'Step 1: Before you submit', 'wporg-plugins' ); ?></h2> 453 <p><?php esc_html_e( 'Please, read and confirm the following.', 'wporg-plugins' ); ?></p> 454 <label> 455 <input type="checkbox" name="requirements[faq]" required="required"> 456 <?php 457 printf( wp_kses_post( __( 'I have read the <a href="%s">Frequently Asked Questions</a>.', 'wporg-plugins' ) ), 'https://developer.wordpress.org/plugins/wordpress-org/plugin-developer-faq/' ); 458 ?> 459 </label> 460 <br> 461 <label> 462 <input type="checkbox" name="requirements[guidelines]" required="required"> 463 <?php 464 printf( wp_kses_post( __( 'I have read and make sure that this plugin complies with <strong>all</strong> of the <a href="%s">Plugins Directory Guidelines</a>.', 'wporg-plugins' ) ), 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/' ); 465 ?> 466 </label> 467 <br> 468 <label> 469 <input type="checkbox" name="requirements[plugin-check]" required="required" /> 470 <?php 471 printf( 472 /* Translators: URL to plugin-check plugin */ 473 wp_kses_post( __( 'I confirm that the plugin has been tested with the <a href="%s">Plugin Check</a> plugin, and all indicated issues resolved (apart from what I believe to be false-positives).', 'wporg-plugins' )), 474 esc_url( home_url( '/plugin-check/' ) ) 475 ); 476 ?> 477 </label> 478 479 <h2><?php esc_html_e( 'Step 2: Common reasons plugins are rejected', 'wporg-plugins' ); ?></h2> 480 <h3>🏷️ 481 <?php 482 printf( 483 wp_kses_post( 484 __( 'Naming and ownership – <em>Guideline <a href="%s" target="_blank">17</a></em>', 'wporg-plugins' ) 485 ), 486 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#17-plugins-must-respect-trademarks-copyrights-and-project-names' 487 ); 488 ?> 489 </h3> 490 <p><?php echo wp_kses_post( __( 'Plugin names must be <strong>distinctive</strong> and should not be <strong>confusingly similar</strong> to existing plugins, projects, products, organizations, or trademarks that are not owned by you.', 'wporg-plugins' ) ); ?></p> 491 <p><?php echo wp_kses_post( __( '<strong>Choosing a distinctive name</strong>: Generic names such as "AI Writer" or "Image Optimization" and/or names similar to existing plugins are unlikely to be accepted, even if the plugin slug is available. Make your plugin stand out by using a unique identifier such as your name, brand, organization, or project name (e.g., “<em>Acme</em> AI Writer”, “<em>WriteralAI</em> – AI Writter”)', 'wporg-plugins' ) ); ?></p> 502 492 <p><?php printf( 503 493 /* translators: 1: User profile URL. */ 504 494 wp_kses_post( 505 __( ' Names that <strong>begin</strong> with a project, organization, or trademark are <strong>only accepted if submitted by the verified owner</strong>. Ownership can be <strong>confirmed through the email domain in your <a href="%1$s" target="_blank">user profile</a></strong> - update itbefore submitting.', 'wporg-plugins' )495 __( '<strong>Demonstrating ownership</strong>: Names that begin with a company, project, organization, or trademark name may only be submitted by the verified owner. Ownership is typically verified using the <a href="%1$s" target="_blank">email address associated with your WordPress.org account</a>. If necessary, update your profile before submitting.', 'wporg-plugins' ) 506 496 ), 507 497 esc_url( 'https://profiles.wordpress.org/profile/edit' ) 508 498 ); ?> 499 </p> 500 <p><?php echo wp_kses_post( __( '<strong>If you are not the owner</strong>: Simply do not imply affiliation with a company, project, or trademark that you do not own. You can do so placing their name at the end and making the distinction clear (e.g., “WriteralAI – AI Writer <em>for Acme</em>”)', 'wporg-plugins' ) ); ?></p> 501 <label> 502 <input type="checkbox" name="requirements[naming]" required="required"> 503 <?php esc_html_e( 'I have chosen a plugin name that is not confusingly similar to existing plugins, projects, organizations, or trademarks. I searched on the internet for similar names and found nothing similar.', 'wporg-plugins' ); ?> 504 </label> 509 505 <br> 510 <?php echo wp_kses_post( __( '<i>For example, use an official Acme email domain (e.g., “john@acme.example”) for a plugin named “Acme AI Writer”.</i>', 'wporg-plugins' ) ); ?> 511 </p> 512 <p><?php echo wp_kses_post( __( '<strong>If you don’t own the entity, don’t imply affiliation</strong>. Place their name <strong>at the end</strong> and <strong>make the distinction clear</strong>.', 'wporg-plugins' ) ); ?> 506 <label> 507 <input type="checkbox" name="requirements[author]" required="required"> 508 <?php 509 printf( 510 /* translators: %s: Current user's email address. */ 511 wp_kses_post( __( 'I have permission to upload this plugin to WordPress.org for others to use and share and I am using a WordPress.org account that accurately represents the plugin owner: %s.', 'wporg-plugins' )), 512 '<strong>' . esc_html( wp_get_current_user()->user_email ) . '</strong>' 513 ); 514 ?> 515 </label> 516 517 <h3>🔓 518 <?php 519 printf( 520 wp_kses_post( 521 __( 'Trialware – <em>Guidelines <a href="%1$s" target="_blank">5</a> and <a href="%2$s" target="_blank">6</a></em>', 'wporg-plugins' ) 522 ), 523 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#5-trialware-is-not-permitted', 524 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#6-software-as-a-service-is-permitted' 525 ); 526 ?> 527 </h3> 528 <p><?php echo wp_kses_post( __( 'Plugins hosted in the WordPress.org Plugin Directory <strong>may not artificially restrict functionality that is included in the plugin itself</strong>.', 'wporg-plugins' ) ); ?></p> 529 <p><?php echo wp_kses_post( __( 'This includes but is not limited to: paywalls, license/feature gating, time-limited trials, usage cutoffs, or any other mechanism that restricts, disables, or conditions access to <strong>features implemented in the plugin code and/or that the plugin itself can do</strong>.', 'wporg-plugins' ) ); ?></p> 530 <p><?php echo wp_kses_post( __( 'Please bear in mind that this is an <strong>open source directory for free to use plugins</strong>. Building a business around your plugin is fine, and there are compliant ways of doing so; artificial limitations in built-in code are not one of them.', 'wporg-plugins' ) ); ?></p> 531 <label> 532 <input type="checkbox" name="requirements[trialware]" required="required"> 533 <?php esc_html_e( 'I confirm that my plugin code does not include artificial limitations to the included functionality. I acknowledge that I must comply with this in future, and that my plugin and account could be suspended indefinitely if I fail to do so.', 'wporg-plugins' ); ?> 534 </label> 535 536 <h3>🚫 <?php esc_html_e( 'Not accepted plugins', 'wporg-plugins' ); ?></h3> 537 <p><?php esc_html_e( 'There are some kind of plugins that aren’t accepted in the directory, please do not submit them.', 'wporg-plugins' ); ?></p> 538 <ul> 539 <li><?php echo wp_kses_post( __( 'Plugins that allow arbitrary code insertion/execution are no longer accepted. This includes but is not limited to: PHP, JavaScript editors, File Managers, and AI tools creating code that is executed on the site. HTML is fine as long as it is escaped correctly. <em>Reason: Security</em>.', 'wporg-plugins' ) ); ?></li> 540 <li> 541 <?php printf( 542 wp_kses_post( __( 'Plugins downloading executable code from external sources. <em>Reasons: Security and <a href="%s" target="_blank">Guideline 8</a></em>.', 'wporg-plugins' ) ), 543 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#8-plugins-may-not-send-executable-code-via-third-party-systems' 544 ); ?> 545 </li> 546 <li> 547 <?php printf( 548 wp_kses_post( __( 'Plugins whose functionality is already well represented in the directory, with hundreds of comparable plugins available, and that do not provide meaningful differentiation or introduce substantial innovation. <em>Reason: <a href="%s" target="_blank">Guideline 18</a></em>.', 'wporg-plugins' ) ), 549 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#18-we-reserve-the-right-to-maintain-the-plugin-directory-to-the-best-of-our-ability' 550 ); ?> 551 </li> 552 </ul> 553 554 <h2><?php esc_html_e( 'Step 3: Submission acknowledgement', 'wporg-plugins' ); ?></h2> 555 <p><?php esc_html_e( 'Please confirm that you understand the following:', 'wporg-plugins' ); ?></p> 556 <label> 557 <input type="checkbox" name="requirements[confirmation1]" required="required"> 558 <?php 559 printf( 560 wp_kses_post( __( 'I understand that submissions that do not follow the <a href="%s" target="_blank">Plugins Directory Guidelines</a> may be rejected. Repeated or serious violations may result in further restrictions.', 'wporg-plugins' ) ), 561 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/' 562 ); 563 ?> 564 </label> 513 565 <br> 514 <?php echo wp_kses_post( __( '<i>For example, if you don’t own “Acme” use a structure like: “{your-distinguible-plugin-name} for Acme” (e.g., “WriteralAI – AI Writer for Acme”).</i>', 'wporg-plugins' ) ); ?> 515 </p> 566 <label> 567 <input type="checkbox" name="requirements[confirmation3]" required="required"> 568 <?php 569 printf( 570 wp_kses_post( __( 'I understand that hosting in the WordPress.org Plugin Directory is provided subject to continued compliance with the <a href="%s" target="_blank">Plugins Directory Guidelines</a>.', 'wporg-plugins' ) ), 571 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/' 572 ); 573 ?> 574 </label> 575 <br> 516 576 517 577 <h3><?php esc_html_e( 'Are you ready? Upload the .zip file for your plugin', 'wporg-plugins' ); ?></h3> -
sites/trunk/wordpress.org/public_html/wp-content/themes/pub/wporg-plugins-2024/patterns/page-add.php
r14487 r14974 55 55 </p> 56 56 57 <h3><?php _e( 'How can I expedite my plugin review?', 'wporg-plugins' ); ?></h3>57 <h3><?php esc_html_e( 'How can I expedite my plugin review?', 'wporg-plugins' ); ?></h3> 58 58 <p> 59 59 <?php … … 64 64 ?> 65 65 </p> 66 <p><?php _e( 'Our three most common reasons for not approving a plugin are:', 'wporg-plugins' ); ?></p>66 <p><?php esc_html_e( 'The most common reasons for not approving a plugin are:', 'wporg-plugins' ); ?></p> 67 67 <ul> 68 <li><?php printf( __( 'The plugin contains unescaped output: <a href="%s">Learn about Escaping Data</a>', 'wporg-plugins' ), 'https://developer.wordpress.org/apis/security/escaping/' ); ?></li> 69 <li><?php printf( __( 'The plugin accepts unsanitized data: <a href="%s">Learn about Sanitizing Data</a>', 'wporg-plugins' ), 'https://developer.wordpress.org/apis/security/sanitizing/' ); ?></li> 70 <li><?php printf( __( 'The plugin processes form data without a nonce: <a href="%s">Learn about Nonces</a>', 'wporg-plugins' ), 'https://developer.wordpress.org/apis/security/nonces/' ); ?></li> 68 <li><?php printf( wp_kses_post( __( 'The plugin contains unescaped output: <a href="%s">Learn about Escaping Data</a>', 'wporg-plugins' ) ), esc_url( 'https://developer.wordpress.org/apis/security/escaping/' ) ); ?></li> 69 <li><?php printf( wp_kses_post( __( 'The plugin accepts unsanitized data: <a href="%s">Learn about Sanitizing Data</a>', 'wporg-plugins' ) ), esc_url( 'https://developer.wordpress.org/apis/security/sanitizing/' ) ); ?></li> 70 <li><?php printf( wp_kses_post( __( 'The plugin processes form data without a nonce: <a href="%s">Learn about Nonces</a>', 'wporg-plugins' ) ), esc_url( 'https://developer.wordpress.org/apis/security/nonces/' ) ); ?></li> 71 <li><?php printf( wp_kses_post( __( 'The plugin does not comply with the guidelines: <a href="%s">Check out the guidelines</a>', 'wporg-plugins' ) ), esc_url( 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/' ) ); ?></li> 71 72 </ul> 72 73 <p><?php _e( 'If the code in your plugin falls into one of the above categories, <strong>your plugin will not be approved</strong>. The Plugins Team will refer you back to these Handbook pages, adding further delay to the review process.', 'wporg-plugins' ); ?></p> … … 77 78 78 79 <h3><?php esc_html_e( 'I made a mistake in my plugin name. Should I update it?', 'wporg-plugins' ); ?></h3> 80 <p><?php echo wp_kses_post( __( 'It depends on what you want to change. If you want to change the plugin <strong>display name</strong> you can update that by updating your plugin files in this page. If what you want to change is the <strong>permalink / slug</strong> of your plugin, you can do that ONCE before we begin with the review (if that’s available you’ll see a link to change it on this page).', 'wporg-plugins' ) ); ?></p> 79 81 <p><?php 80 82 printf( 81 83 /* translators: %s: Email address */ 82 __( 'It depends on what you want to change. If you want to change the plugin <strong>display name</strong> you can update that by updating your plugin files in this page. If what you want to change is the <strong>permalink / slug</strong> of your plugin, you can do that ONCE before we begin with the review (if that’s available you’ll see a link to change it on this page). If this is not possible, you will need to contact us at %s, we can change it as long as the plugin has not yet been approved.', 'wporg-plugins'),84 wp_kses_post( __( 'If you can no longer change the slug from this page, please contact us. If your plugin is already under review, <strong>simply reply to the review email</strong>. Otherwise, email us at %s. We can make the change as long as the plugin has not yet been approved.', 'wporg-plugins' ) ), 83 85 '<code>plugins@wordpress.org</code>' 84 86 ); … … 86 88 87 89 <h3><?php esc_html_e( 'Why can’t I submit a plugin with certain display names?', 'wporg-plugins' ); ?></h3> 88 <p><?php echo wp_kses_post( __( 'Certain plugin names are prohibited due to trademark abuse . Similarly, we prevent their use in plugin slugs entirely for your protection.', 'wporg-plugins' ) ); ?></p>90 <p><?php echo wp_kses_post( __( 'Certain plugin names are prohibited due to trademark abuse and to avoid confusion with other project names or plugins. Similarly, we prevent their use in plugin slugs entirely for your protection.', 'wporg-plugins' ) ); ?></p> 89 91 </div> 90 92 </section> -
sites/trunk/wordpress.org/public_html/wp-content/themes/pub/wporg-plugins-2024/patterns/page-developers.php
r13767 r14974 31 31 <?php 32 32 /* translators: URL to licence list. */ 33 printf( wp_kses_post( __( 'Your plugin must be compatible with the <a href="%s">GNU General Public License v2</a>, or any later version. We strongly recommend using the same license as WordPress — “GPLv2 or later.”', 'wporg-plugins' ) ), esc_url( 'https://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses' ) ); 33 printf( wp_kses_post( __( 'Your plugin must be compatible with the <a href="%s">GNU General Public License v2</a>, or any later version. The plugin should either include its human-readable source code or provide a clear, accessible link to it. We strongly recommend using the same license as WordPress — “GPLv2 or later.”', 'wporg-plugins' ) ), esc_url( 'https://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses' ) ); 34 ?> 35 </li> 36 <li> 37 <?php 38 /* translators: URL to guidelines. */ 39 printf( wp_kses_post( __( 'The plugin <a href="%s" target="_blank">must not impose artificial restrictions on its built-in functionality</a>. This includes license gates, paywalls, time-limited trials, usage quotas, or any other mechanism that limits features included in the plugin code and/or that the plugin code can do.', 'wporg-plugins' ) ), esc_url( 'https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#5-trialware-is-not-permitted' ) ); 34 40 ?> 35 41 </li>
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)