' ) // Icon
);
// La primera entrada, al tener el mismo slug que el menú, remplaza a la primera que se crearía por defecto
add_submenu_page(
'aicc_menu', // Parent slug
__( 'AI Content Creator', 'ai-content-creator' ), // Page title
__( 'Create article', 'ai-content-creator' ) . wp_kses_post( $notificacion_globo ), // Menu title
$requisito_creadores, // Capability
'aicc_menu', // Menu slug
'aicc_create_page_callback', // Function
);
add_submenu_page(
'aicc_menu',
__( 'AI Content Creator', 'ai-content-creator' ) . ' - ' . __( 'Articles', 'ai-content-creator' ),
__( 'Articles', 'ai-content-creator' ) . wp_kses_post( $notificacion_globo ),
$requisito_creadores,
'aicc_articles',
'aicc_articles_page_callback',
);
add_submenu_page(
'aicc_menu',
__( 'AI Content Creator', 'ai-content-creator' ) . ' - ' . __( 'Settings', 'ai-content-creator' ),
__( 'Settings', 'ai-content-creator' ) . wp_kses_post( $notificacion_globo ),
'manage_options',
'aicc_settings',
'aicc_settings_page_callback',
);
add_submenu_page(
'aicc_menu',
__( 'AI Content Creator', 'ai-content-creator' ) . ' - ' . __( 'Help', 'ai-content-creator' ),
__( 'Help', 'ai-content-creator' ) . wp_kses_post( $notificacion_globo ),
$requisito_creadores,
'aicc_help',
'aicc_help_page_callback',
);
}
function aicc_create_page_callback() {
require_once plugin_dir_path( __FILE__ ) . 'crear.php';
}
function aicc_help_page_callback() {
// Contenido de la ayuda
echo aicc_pagina_ayuda();
}
function aicc_articles_page_callback() {
require_once plugin_dir_path( __FILE__ ) . 'articulos.php';
}
function aicc_settings_page_callback() {
echo '' . "\n";
aicc_cabecera_pagina_admin();
echo '
';
echo __( 'Settings', 'ai-content-creator' );
echo "
\n";
settings_errors();
echo '\n";
echo "\n";
}
add_action('admin_init', 'aicc_settings_init');
function aicc_settings_init() {
register_setting(
'aicc_settings', // Option group
'aicc_settings', // Option name
'aicc_settings_validate' // Function to validate input
);
add_settings_section(
'aicc_settings_section_openai', // ID of the section
__( 'OpenAI account', 'ai-content-creator' ), // Title of the section
'aicc_settings_section_openai_callback', // Function to be called to display the section
'aicc_settings' // Slug of the page
);
add_settings_field(
'aicc_apikoai', // ID of the field
__( 'OpenAI API key', 'ai-content-creator' ), // Title of the field
'aicc_settings_apikoai_callback', // Function to be called to display the section
'aicc_settings', // Slug of the page
'aicc_settings_section_openai' // ID of the section
);
/*
add_settings_section(
'aicc_settings_section_ai21',
__( 'AI21 account', 'ai-content-creator' ),
'aicc_settings_section_ai21_callback',
'aicc_settings'
);
add_settings_field(
'aicc_apikai21',
__( 'AI21 API key', 'ai-content-creator' ),
'aicc_settings_apikai21_callback',
'aicc_settings',
'aicc_settings_section_ai21'
);
add_settings_section(
'aicc_settings_section_posproduccion',
__( 'External post-production system (optional)', 'ai-content-creator' ),
'aicc_settings_section_posproduccion_callback',
'aicc_settings'
);
add_settings_field(
'aicc_apiurlposproduccion',
__( 'Post-production URL', 'ai-content-creator' ),
'aicc_settings_apiurlposproduccion_callback',
'aicc_settings',
'aicc_settings_section_posproduccion'
);
add_settings_field(
'aicc_apikposproduccion',
__( 'Post-production API key', 'ai-content-creator' ),
'aicc_settings_apikposproduccion_callback',
'aicc_settings',
'aicc_settings_section_posproduccion'
);
*/
add_settings_section(
'aicc_settings_section_general',
__( 'General settings', 'ai-content-creator' ),
'aicc_settings_section_generales_callback',
'aicc_settings'
);
add_settings_field(
'aicc_modelo',
__( 'AI model', 'ai-content-creator' ),
'aicc_settings_modelo_callback',
'aicc_settings',
'aicc_settings_section_general'
);
add_settings_field(
'aicc_longitud',
__( 'Article length in words', 'ai-content-creator' ),
'aicc_settings_longitud_callback',
'aicc_settings',
'aicc_settings_section_general'
);
add_settings_field(
'aicc_timeout',
__( 'Time limit in seconds', 'ai-content-creator' ),
'aicc_settings_timeout_callback',
'aicc_settings',
'aicc_settings_section_general'
);
add_settings_field(
'aicc_idioma',
__( 'Language of created articles', 'ai-content-creator' ),
'aicc_settings_idioma_callback',
'aicc_settings',
'aicc_settings_section_general'
);
add_settings_field(
'aicc_tono',
__( 'Tone of created articles', 'ai-content-creator' ),
'aicc_settings_tono_callback',
'aicc_settings',
'aicc_settings_section_general'
);
add_settings_field(
'aicc_tablacontenidos',
__( 'Table of contents', 'ai-content-creator' ),
'aicc_settings_tablacontenidos_callback',
'aicc_settings',
'aicc_settings_section_general'
);
add_settings_field(
'aicc_editorescrean',
__( 'Editors', 'ai-content-creator' ),
'aicc_settings_editorescrean_callback',
'aicc_settings',
'aicc_settings_section_general'
);
}
function aicc_settings_section_openai_callback() {
echo __( 'Enter your API key for', 'ai-content-creator' ) . ' OpenAI
';
}
function aicc_settings_apikoai_callback() {
$valor = '';
$options = get_option('aicc_settings');
if ( isset( $options['aicc_apikoai'] ) ) {
$valor = $options['aicc_apikoai'];
}
echo '
' . "\n";
echo ' ';
echo '';
echo __( 'Help', 'ai-content-creator' );
echo "\n";
}
function aicc_settings_section_ai21_callback() {
echo __( 'Enter your API key for', 'ai-content-creator' ) . ' AI21';
}
function aicc_settings_apikai21_callback() {
$valor = '';
$options = get_option('aicc_settings');
if ( isset( $options['aicc_apikai21'] ) ) {
$valor = $options['aicc_apikai21'];
}
echo '' . "\n";
}
function aicc_settings_section_posproduccion_callback() {
echo __( 'Enter your access data for post-production API', 'ai-content-creator' );
}
function aicc_settings_apiurlposproduccion_callback() {
$valor = '';
$options = get_option('aicc_settings');
if ( isset( $options['aicc_apiurlposproduccion'] ) ) {
$valor = $options['aicc_apiurlposproduccion'];
}
echo '' . "\n";
}
function aicc_settings_apikposproduccion_callback() {
$valor = '';
$options = get_option('aicc_settings');
if ( isset( $options['aicc_apikposproduccion'] ) ) {
$valor = $options['aicc_apikposproduccion'];
}
echo '' . "\n";
}
function aicc_settings_section_generales_callback() {
//echo 'Introduce la clave API de tu cuenta de OpenAI';
}
function aicc_settings_modelo_callback() {
$modelo = aicc_conf_modelo();
$texto = sprintf( __( 'Price %s higher than GPT-3.5', 'ai-content-creator' ), '10x' );
echo aicc_campo_radio_modelo_html( $modelo, 'text-davinci-003', $texto );
echo "
\n";
$texto = '' . __( 'Recommended', 'ai-content-creator' ) . '. ' . __( 'This is the foundation of ChatGPT', 'ai-content-creator' );
echo aicc_campo_radio_modelo_html( $modelo, 'gpt-3.5-turbo', $texto );
echo "
\n";
$texto = __( 'Currently in a limited beta and only accessible to those who have been granted access.', 'ai-content-creator' ). ' ' . sprintf( __( 'Price %s higher than GPT-3.5', 'ai-content-creator' ), '30x' );
echo aicc_campo_radio_modelo_html( $modelo, 'gpt-4', $texto );
echo "
\n";
$texto = '(' . __( 'Under development', 'ai-content-creator' ) . ')' ;
echo aicc_campo_radio_modelo_html( $modelo, 'ai21', $texto );
echo "\n";
}
function aicc_settings_longitud_callback() {
$valor = aicc_conf_longitud();
echo '' . "\n";
echo '
';
echo __( 'For guidance only, the final decision is up to the AI. [Default: 500]', 'ai-content-creator' );
echo '
';
echo __( 'Greater effectiveness in GPT-4.', 'ai-content-creator' );
echo '';
}
function aicc_settings_timeout_callback() {
$valor = aicc_conf_timeout();
echo '' . "\n";
echo "
\n";
echo __( 'Time limit for reply. After waiting this time for IA reply, the connection will be closed and considered an error. [Default: 120]', 'ai-content-creator' );
echo "\n";
}
function aicc_settings_idioma_callback() {
$valor_actual = aicc_conf_idioma();
$idiomas_soportados = aicc_idiomas();
echo '\n";
}
function aicc_settings_tono_callback() {
$valor_actual = aicc_conf_tono();
$tonos_soportados = aicc_tonos();
echo '\n";
}
function aicc_settings_tablacontenidos_callback() {
$valor_actual = aicc_conf_tablacontenidos();
echo " ";
echo __( 'Start with an introduction and a table of contents.', 'ai-content-creator' );
echo '
';
echo __( 'Recommended for SEO.', 'ai-content-creator' );
echo '';
}
function aicc_settings_editorescrean_callback() {
$valor_actual = aicc_conf_editorescrean();
echo " ";
echo __( 'Editors can use AI to create articles.', 'ai-content-creator' );
}
function aicc_requisito_crear() {
$capacidad = 'manage_options';
if ( aicc_conf_editorescrean() ) {
$capacidad = 'edit_posts';
}
return $capacidad;
}
function aicc_campo_radio_modelo_html( $modelo_elegido, $modelo_seleccionable, $texto = '' ) {
// Entrega el campo para el radio buttón de un modelo.
$html = "