Simple Page Ordering


Ordina le tue pagine, i tipi di contenuto personalizzati o i tipi di post personalizzati aventi gli attributi di pagina con un semplice “trascina e rilascia” proprio dall’elenco delle pagine di WordPress.

Basta trascinare e rilasciare la pagina nella posizione desiderata. Nient’altro. Non ci sono nuove pagine di menu di amministrazione, goffe e sovrapposte alle interfacce utente. È sufficiente trascinare e rilasciare gli elementi nella schermata delle pagine o dei tipi di contenuto.

Il plugin tiene conto dei permessi: solo gli utenti con i permessi di modificare le pagine degli altri (editori e amministratori) potranno riordinare il contenuto.

L’aiuto in linea è incluso: basta fare clic sulla scheda “Aiuto” posta in alto a destra della schermata.

Nota che il plugin non è compatibile con Internet Explorer 7 e versioni precedenti, a motivo dei limiti di questi browser.

Come contribuire

Saremmo molto lieti se ti unissi a noi nello sviluppo su GitHub.

Screenshot (schermate di esempio)

  • Spostamento della pagina nella sua nuova posizione
  • Indicatore di processo


  1. Installa tramite la directory dei plugin di oppure caricando i file sul tuo server.
  2. Attiva il plugin dal menu “Plugin” in WordPress.
  3. Torna all’opera e riordina i tuoi contenuti!


Perché non posso riordinare i miei articoli?

Gli articoli generici non vengono visualizzati per ordine di menu, ma per cronologia. In teoria puoi aggiungere l’ordinamento per menu agli articoli nel tuo codice (functions.php del tema, plugin) utilizzando:

add_post_type_support( 'post', 'page-attributes' );
Posso far sì che i miei tipi di contenuto possano sfruttare questo plugin?

Sì. Ci sono due modi per attivare la compatibilità con Simple Page Ordering.

Il modo migliore è, quando si registra il tipo di contenuto, impostare hierarchical a true. I tipi di contenuto gerarchici vengono ordinato in modo nativo per ordine di menu.

In alternativa, quando definisci le proprietà che il tipo di contenuto avrà, includi page-attributes. Verrà aggiunta un’opzione Ordina per Numero di ordinamento ai link dei filtri, proprio sopra i menu a discesa. Se puoi ordinare per numero di ordinamento, puoi trascinare e rilasciare il contenuto.

Infine puoi utilizzare il filtro simple_page_ordering_is_sortable, che non tiene conto del risultato del controllo predefinito e del nome del tipo di contenuto, in modo da oltrepassare il comportamento standard.

Desidero che i miei tipi di contenuto non gerarchici siano ordinabili. Aiuto!

Vedi le due precedenti risposte: ti basta aggiungere page-attributes all’elenco di funzionalità supportate per il tipo di contenuto.

Ho riordinato i miei articoli, ma l’ordine non è cambiato nel frontend del mio sito!

Questo plugin non cambia alcun comportamento nel frontend: cambia soltanto l’ordine del menu archiviato in WordPress.

Se desideri un elenco di pagine o tipi di contenuto personalizzato da visualizzare in quel preciso ordine, devi cambiare il parametro orderby della query dei post in menu_order (se non lo è già).

Ho riordinato il mio contenuto e sembrava funzionare, ma quando ho aggiornato è tornato al vecchio ordine!

Ciò probabilmente significa che la richiesta AJAX – il codice eseguito sul server – non è andata a buon fine dopo che hai rilasciato il contenuto nella nuova posizione. Alcuni host condivisi fanno scadere e limitano in modo aggressivo le richieste AJAX. La versione 2.0 raggruppa queste richieste: in tal modo puoi provare a ridurre il numero di elementi da aggiornare ad ogni richiesta utilizzando un filtro nel functions.php del tuo tema o in un plugin personalizzato:

add_filter( 'simple_page_ordering_limit', function($number) { return 5; } );

Dove 5 è il numero di elementi da raggruppare per ogni richiesta (l’opzione predefinita è 50). Nota che questo esempio usa le funzioni di callback di PHP5.3+, quindi se usi ancora PHP 5.2, dovrai utilizzare un callback tradizionale.

Cosa è successo al box a discesa che mi permetteva di cambiare il numero di elementi su ogni pagina nell’area di amministrazione??

Questa funzionalità è già disponibile in WordPress in modo nativo, ma è un po’ nascosta. Se tiri giù la scheda “Impostazioni schermata” posta in alto (nell’elenco degli articoli), c’è un campo dove puoi indicare il numero di elementi da mostrare per pagina. Ho pensato che non fosse giusto farne un duplicato.


29 Maggio 2020
Just tried this plugin after having struggled with the hierarchical sorting for a long time. It does what was announced, but in a stupid way. Careful: this plugin changes the hierarchy-level and the sort# of your pages, without informing you first. This is like cheating. Of course I can cheat myself and assign wrong parameters to a page to force its position in the pages-list. But this is not what I had hoped for. Our need is this: We have three different versions (contentwise) of each page, so our triplets share the same position in the hierarchy of course. Many pages have sub-pages, but we want the triplets to always show up next to each other in the list, to help us with editing. We hate the way WordPress is crawling the tree, going first all the way down into one branch before going back up to higher levels. WordPress is giving us a hierarchy for pages, but gives higher priority to the alphabet than to the hierarchy-level when displaying the list. Yikes. We had hoped this plugin would help us, but it does not. We need to see a list of all our pages strictly sorted by hierarchy, like this example: (Any ideas please?) Superdad Superdad's twin sister Superdad's twin brother -Superson (son of Superdads twin sister but not important for our list view needs) -Superson's twin brother -Superson's other twin brother -Supersecondson -Supersecondson's twin sister -Supersecondson's other twin sister --Supergranddaughter (daughter of any of the above six pages but no need to see it) --Supergranddaughter's twin sister --Supergranddaughter's twin brother I give three stars because I looked all over before I installed and tried to learn how this plugin does the magic. There is no documentation about "the active ingredient". I was thinking it would internally rename the page-id or something (and hoped it would do it properly and not break our website). If you help me find a solution (since you guys know all about sorting) I will gladly give you five stars and make a mention here that yours is not our solution but how you helped me find our own solution. Thanks.
29 Settembre 2019
ad a _ _ _ before the menu an now my menu, is in a total disorder. no posssibility to go back !!! i found a maner : to associate parent to a page and save, after to undo that and save. the 'order' column only would be affected. thanks wordpress 5.2.3
10 Febbraio 2020
Just want to say that in February of 2020 this plugin is still working perfectly on several WordPress websites. Makes my live a lot easier... and I love anything that means less work for me. This plugin saves a ton of work, especially on sites with a lot of pages. Just drag and drop pages where you want them. It got even easier when I searched and found out how to get more than 30 pages to show up on the list: In the Admin area, go to All Pages, and click on the box at the top right corner of the screen - the box that says: Screen Options. Then tell it how many items you want to display per page. Anything that makes my life easier gets a 5-star rating from me every time. And this plugin definitely makes my life easier.
Leggi tutte le recensioni di 115

Contributi e sviluppo

“Simple Page Ordering” è un software open source. Le persone che hanno contribuito allo sviluppo di questo plugin sono indicate di seguito.


“Simple Page Ordering” è stato tradotto in 26 lingue. Grazie ai traduttori per i loro contributi.

Traduci “Simple Page Ordering” nella tua lingua.

Ti interessa lo sviluppo?

Esplora il Codice segui il Repository SVN iscriviti al Log delle Modifiche. Puoi farlo tramite RSS con un lettore di feed.

Changelog (registro delle modifiche)


  • Changed: Avoid failed reordering introduced in v2.3.3 when handling a large number of non-hierarchical items (props @dinhtungdu)
  • Changed: Bump WordPress version support to 5.4 (props @tmoorewp)
  • Fixed: Ensure titles of reordered items appear in a human-readable way (props @dinhtungdu)



  • Added: Allow cancellation of drag operation by pressing escape key
  • Fixed: Allow form input elements added to a row by plugins to be interacted with


  • Fixed: Prevent rows with hidden columns from jumping around while dragging


  • Added: Use WordPress core’s spinner class
  • Added: Grunt-based build process with Sass
  • Changed: Use WP_Query instead of get_posts() for better performance
  • Changed: Remove bundled translations in favor of language packs
  • Fixed: Avoid exceeding PHP’s max input variables, which could cause incorrectly assigned page order
  • Fixed: Malformed URL that would take you to posts instead of pages
  • Fixed: PHPDoc and coding standards to align with 10up’s Engineering Best Practices


  • Fixed: Redundant URL encoding when sorting in admin page list


  • Fixed: Ordering in WordPress 4.0 following core changes to ORDER BY in WP_Query


  • Added: German localization (props @glueckpress)
  • Fixed: Column widths no longer change when dragging a row (partial props @griffinjt)
  • Security: Closed obscure XSS vulnerability related to Sort by Order link (props @simon-waters)


  • Added: Brazilian translation (props @felds)
  • Fixed: Bring back translations / text domain (yikes!)


  • Changed: Look and feel to better match WordPress 3.8 admin redesign
  • Changed: Improved awareness of and compatibility with Quick Edit (inline editor)
  • Fixed: Prevent collisions with themes and plugins bundling Simple Page Ordering


  • Fixed: Hierarchical custom post types without page-attributes was still broken – doh!
  • Fixed: Extreme edge case where post columns did not include the post title now supported


  • Fixed: custom post types with page-attributes or hierarchical properties, but not both, breaking ordering


  • Added: Awareness of custom user capabilities for post types, in addition to a filter (simple_page_ordering_edit_rights) for overriding reordering rights (previously used edit_others_pages globally)
  • Added: Awareness of custom post statuses (so they are not skipped during backend ordering operation)
  • Changed: UI refinements: Better “spinner” positioning (and HiDPI), translucent row when moving, improved appearance of “drop” placeholder, wait till row dragged by at least 5px to start sorting
  • Changed: Major JavaScript refactoring and simplification (combined with new stylesheet) for better performance


  • Added: Drag pages into any part of the page hierarchy! No longer limited to same branch of tree!
  • Added: Big performance improvements under the hood: leaner queries, batched requests, less processing
  • Added: New filters and hooks to extend / override default functionality
  • Changed: Scales much more reliably in situations with very high page counts due to batching of requests
  • Changed: Order of the first page is now set to “1” instead of “0”, so pages added after ordering are added at the top (instead of second)
  • Changed: Removed “number of pages” drop down, which is repetitive of a field accessible under Screen Options
  • Changed: Improved compatibility with newer versions of WordPress


  • Added: Support for ordering non-hierarchical post types that have “page-attributes” support
  • Added: New filter link for “Sort by Order” to restore (hierarchical) or set (non-hierarchical, page attributes support) post list sort to menu order
  • Changed: Users are now forced to wait for current sort operation to finish before they can sort another item
  • Changed: Smarter about “not sortable” view states
  • Changed: Localization ready! Rough Spanish translation included.
  • Changed: Assorted other performance and code improvements
  • Fixed: Unexpected page ordering results when pages have not been explictly ordered yet (sorts by menu_order, then title, not just menu_order)
  • Fixed: “Per page” drop down filter selection not saving between page loads (was broken in 3.1)
  • Fixed: Items are always ordered with positive integers (potential negative sort orders had some performance benefits in last version, but sometimes caused issues)


  • Fixed: for broken inline editing (quick edit) fields in Firefox


  • Changed: Smarter awareness of “sorted” modes in WordPress 3.1 (can only use when sorted by menu order)
  • Changed: Smarter awareness of “quick edit” mode (can’t drag)
  • Changed: Generally simplified / better organized code


  • Added: Further directions in the plug-in description (some users were confused about how to use it)
  • Added: Basic compatibility with 3.1 RC (prevent clashes with post list sorting)
  • Changed: “Move” cursor only set if JavaScript enabled
  • Fixed: Page count display always showing “0” on non-hierarchical post types (Showing 1-X of X)
  • Fixed: Hidden menu order not updating after sort (causing Quick Edit to reset order when used right after sorting)


  • Changed: Loosened constraints on drag and drop to ease dropping into top and bottom position
  • Changed: Improved some terminology (with custom post types in mind)
  • Fixed: Row background staying “white” after dropping into a new position
  • Fixed: Double border on the bottom of the row while dragging


  • Changed: Simplified code – consolidated hooks
  • Changed: Updated version requirements