' . get_bloginfo( 'description' ) . "\n\n"; $agenli_out .= '## Pages' . "\n\n"; $agenli_pages = get_posts( array( 'post_type' => 'page', 'post_status' => 'publish', 'posts_per_page' => 200, 'orderby' => 'menu_order', 'order' => 'ASC', )); foreach ( $agenli_pages as $agenli_p ) { $agenli_robots = agenli_get_post_meta( $agenli_p->ID, 'seo_robots', 'index,follow' ); if ( false !== strpos( $agenli_robots, 'noindex' ) ) continue; if ( '1' === agenli_get_post_meta( $agenli_p->ID, 'exclude_llms', '0' ) ) continue; $agenli_desc = agenli_get_post_meta( $agenli_p->ID, 'seo_desc' ); if ( ! $agenli_desc ) { $agenli_desc = wp_trim_words( wp_strip_all_tags( $agenli_p->post_content ), 20, '...' ); } $agenli_out .= '- [' . get_the_title( $agenli_p->ID ) . '](' . get_permalink( $agenli_p->ID ) . ')'; if ( $agenli_desc ) $agenli_out .= ': ' . $agenli_desc; $agenli_out .= "\n"; } $agenli_out .= "\n## Posts\n\n"; $agenli_posts = get_posts( array( 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => 100, 'orderby' => 'date', 'order' => 'DESC', )); foreach ( $agenli_posts as $agenli_p ) { $agenli_robots = agenli_get_post_meta( $agenli_p->ID, 'seo_robots', 'index,follow' ); if ( false !== strpos( $agenli_robots, 'noindex' ) ) continue; if ( '1' === agenli_get_post_meta( $agenli_p->ID, 'exclude_llms', '0' ) ) continue; $agenli_desc = agenli_get_post_meta( $agenli_p->ID, 'seo_desc' ); if ( ! $agenli_desc ) { $agenli_desc = wp_trim_words( wp_strip_all_tags( $agenli_p->post_content ), 20, '...' ); } $agenli_out .= '- [' . get_the_title( $agenli_p->ID ) . '](' . get_permalink( $agenli_p->ID ) . ')'; if ( $agenli_desc ) $agenli_out .= ': ' . $agenli_desc; $agenli_out .= "\n"; } set_transient( 'agenli_llms_lite', $agenli_out, 6 * HOUR_IN_SECONDS ); header( 'Content-Type: text/plain; charset=utf-8' ); echo $agenli_out; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } private static function output_full() { header( 'Content-Type: text/plain; charset=utf-8' ); $agenli_items = get_posts( array( 'post_type' => array( 'post', 'page' ), 'post_status' => 'publish', 'posts_per_page' => 500, )); echo '# ' . esc_html( get_bloginfo( 'name' ) ) . ' - Full Content Index' . "\n\n"; foreach ( $agenli_items as $agenli_p ) { $agenli_robots = agenli_get_post_meta( $agenli_p->ID, 'seo_robots', 'index,follow' ); if ( false !== strpos( $agenli_robots, 'noindex' ) ) continue; if ( '1' === agenli_get_post_meta( $agenli_p->ID, 'exclude_llms', '0' ) ) continue; echo '# ' . esc_html( get_the_title( $agenli_p->ID ) ) . "\n"; echo 'URL: ' . esc_url( get_permalink( $agenli_p->ID ) ) . "\n"; echo 'Date: ' . esc_html( gmdate( 'Y-m-d', strtotime( $agenli_p->post_date_gmt ) ) ) . "\n\n"; echo esc_html( wp_strip_all_tags( $agenli_p->post_content ) ) . "\n\n---\n\n"; } } public static function clear_cache() { delete_transient( 'agenli_llms_lite' ); } public static function ajax_generate() { check_ajax_referer( 'agenli_nonce', 'nonce' ); if ( ! current_user_can( 'manage_options' ) ) { wp_send_json_error( array( 'message' => 'Unauthorised.' ) ); } if ( ! agenli_is_pro() ) { wp_send_json_error( array( 'message' => 'LLMs.txt requires AgencyBoost Pro.' ) ); } self::clear_cache(); wp_send_json_success( array( 'lite_url' => home_url( '/llms.txt' ), 'full_url' => home_url( '/llms-full.txt' ), 'message' => 'LLMs.txt regenerated successfully.', )); } }