Make WordPress Core

Ticket #47466: 47466.2.diff

File 47466.2.diff, 1.4 KB (added by SergeyBiryukov, 6 years ago)
  • src/wp-admin/includes/misc.php

     
    7979                        $state = false;
    8080                }
    8181                if ( $state ) {
     82                        if ( '#' === substr( $markerline, 0, 1 ) ) {
     83                                continue;
     84                        }
    8285                        $result[] = $markerline;
    8386                }
    8487                if ( false !== strpos( $markerline, '# BEGIN ' . $marker ) ) {
     
    119122                $insertion = explode( "\n", $insertion );
    120123        }
    121124
     125        $instructions = sprintf(
     126                /* translators: 1: marker */
     127                __( 'The directives (lines) between `BEGIN %1$s` and `END %1$s` are
     128dynamically generated, and should only be modified through WordPress filters.
     129Any changes to the directives between these markers will be overwritten.' ),
     130                $marker
     131        );
     132
     133        $instructions = explode( "\n", $instructions );
     134        foreach ( $instructions as $line => $text ) {
     135                $instructions[ $line ] = '# ' . $text;
     136        }
     137
     138        /**
     139         * Filters the inline instructions inserted before the dynamically generated content.
     140         *
     141         * @since 5.3.0
     142         *
     143         * @param string[] $instructions Array of lines with inline instructions.
     144         * @param string   $marker       The marker being inserted.
     145         */
     146        $instructions = apply_filters( 'insert_with_markers_inline_instructions', $instructions, $marker );
     147
     148        $insertion = array_merge( $instructions, $insertion );
     149
    122150        $start_marker = "# BEGIN {$marker}";
    123151        $end_marker   = "# END {$marker}";
    124152