Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save timiwahalahti/cdc31270f727ba6509b203dae2f64861 to your computer and use it in GitHub Desktop.
Save timiwahalahti/cdc31270f727ba6509b203dae2f64861 to your computer and use it in GitHub Desktop.
<?php
use Carbon_Fields\Container;
use Carbon_Fields\Field;
/**
* Add metaboxes for single reference
*/
add_action( 'carbon_register_fields', 'timiwahalahti_metabox_reference' );
function timiwahalahti_metabox_reference() {
Container::make( 'post_meta', __( 'Kiinnitä etusivun pääreferenssiksi', 'timiwahalahti' ) )
->show_on_post_type( 'reference' )
->set_context( 'side' )
->add_fields( array(
Field::make( 'checkbox', 'pool_upsell', __( 'Kiinnitä', 'timiwahalahti' ) )
) );
Container::make( 'post_meta', __( 'Referenssin yleiset asetukset', 'timiwahalahti' ) )
->show_on_post_type( 'reference' )
->add_fields( array(
Field::make( 'text', 'alt_title', __( 'Otsikko', 'timiwahalahti' ) )
->set_width( 70 ),
Field::make( 'text', 'svg_logo_filename', __( 'Logotiedoston nimi', 'timiwahalahti' ) )
->set_width( 30 )
->help_text( __( 'Ilman logo- alkua ja tiedostopäätettä', 'timiwahalahti' ) ),
Field::make( 'checkbox', 'show_general', __( 'Näytä alun teksti', 'timiwahalahti' ) )
->set_width( 40 )
->help_text( __( 'Alun tekstinä käytetään tekstieditorin sisältöä', 'timiwahalahti' ) ),
Field::make( 'text', 'sub_title_general', __( 'Alun tekstin alueotsikko', 'timiwahalahti' ) )
->set_width( 60 )
->set_conditional_logic( array(
array(
'field' => 'show_general',
'value' => 'yes'
)
) ),
) );
Container::make( 'post_meta', __( 'Lainaus', 'timiwahalahti' ) )
->show_on_post_type( 'reference' )
->add_fields( array(
Field::make( 'textarea', 'quote', __( 'Teksti', 'timiwahalahti' ) ),
Field::make( 'text', 'quote_name', __( 'Nimi', 'timiwahalahti' ) )
->set_width( 33 ),
Field::make( 'text', 'quote_title', __( 'Titteli', 'timiwahalahti' ) )
->set_width( 33 ),
Field::make( 'image', 'quote_image', __( 'Kuva', 'timiwahalahti' ) )
->set_width( 33 ),
) );
Container::make( 'post_meta', __( 'Referenssin dynaaminen esittely', 'timiwahalahti' ) )
->show_on_post_type( 'reference' )
->add_fields( array(
Field::make( 'complex', 'parts' )
->add_fields( array(
// Field for template select
Field::make( 'select', 'template', __( 'Osion pohja', 'timiwahalahti' ) )
->add_options( array(
'0' => __( 'Valitse', 'timiwahalahti' ),
'text' => __( 'Keskitetty teksti', 'timiwahalahti' ),
'text-col' => __( 'Teksti kahdessa palstassa', 'timiwahalahti' ),
'text-image' => __( 'Teksti oikealla kuvalla', 'timiwahalahti' ),
'text-bg-image' => __( 'Teksti taustakuvalla', 'timiwahalahti' ),
'text-bg-image-centered' => __( 'Keskitetty teksti taustakuvalla', 'timiwahalahti' ),
'images' => __( 'Kuvagalleria', 'timiwahalahti' ),
'before-after' => __( 'Ennen - jälkeen kuvat', 'timiwahalahti' ),
'image' => __( 'Kuva', 'timiwahalahti' ),
'numbers' => __( 'Avainluvut', 'timiwahalahti' ),
'quote' => __( 'Lainaus', 'timiwahalahti' )
) ),
// More general sub fields
Field::make( 'text', 'sub_title', __( 'Alueen otsikko', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => array( 'text-bg-image', 'text-bg-image-centered', 'text-col', 'text-image', 'text', 'numbers' ),
'compare' => 'IN'
)
) ),
// Fields for text-bg-image, text-image, text and
Field::make( 'image', 'image', __( '(Tausta)kuva', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => array( 'text-bg-image', 'text-bg-image-centered', 'text-image', 'image' ),
'compare' => 'IN'
)
) ),
Field::make( 'rich_text', 'content', __( 'Sisältö', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => array( 'text-bg-image', 'text-bg-image-centered', 'text-image', 'text' ),
'compare' => 'IN'
)
) ),
// Fields for images
Field::make( 'checkbox', 'lift_up', __( 'Nosta edellisen alueen päälle', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'images',
)
) ),
Field::make( 'complex', 'images', __( 'Kuvat', 'timiwahalahti' ) )
->add_fields( array(
Field::make( 'image', 'image', __( 'Kuva', 'timiwahalahti' ) ),
) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'images',
)
) ),
// Fields for 2col text
Field::make( 'text', 'title', __( 'Otsikko', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'text-col',
)
) ),
Field::make( 'rich_text', 'col1', __( 'Teksti vasemmalla', 'timiwahalahti' ) )
->set_width( 50 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'text-col',
)
) ),
Field::make( 'rich_text', 'col2', __( 'Teksti oikealla', 'timiwahalahti' ) )
->set_width( 50 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'text-col',
)
) ),
// Fields for before and after
Field::make( 'color', 'bg_color', __( 'Taustaväri', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'before-after',
)
) ),
Field::make( 'text', 'label1', __( 'Ensimmäinen otsikko', 'timiwahalahti' ) )
->set_width( 50 )
->set_default_value( __( 'Ennen', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'before-after',
)
) ),
Field::make( 'text', 'label2', __( 'Toinen otsikko', 'timiwahalahti' ) )
->set_width( 50 )
->set_default_value( __( 'Jälkeen', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'before-after',
)
) ),
Field::make( 'image', 'image1', __( 'Ensimmäinen kuva', 'timiwahalahti' ) )
->set_width( 50 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'before-after',
)
) ),
Field::make( 'image', 'image2', __( 'Toinen kuva', 'timiwahalahti' ) )
->set_width( 50 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'before-after',
)
) ),
// Fields for image
Field::make( 'checkbox', 'wide_img', __( 'Leveä kuva', 'timiwahalahti' ) )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'image',
)
) ),
// Fields for numbers
Field::make( 'text', 'number1_value', __( 'Ensimmäinen numero', 'timiwahalahti' ) )
->set_width( 20 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
Field::make( 'text', 'number1_format', __( 'Formaatti', 'timiwahalahti' ) )
->set_width( 10 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
Field::make( 'text', 'number1_label', __( 'Selite', 'timiwahalahti' ) )
->set_width( 45 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
Field::make( 'date', 'number1_updated', __( 'Päivitetty', 'timiwahalahti' ) )
->set_width( 25 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
Field::make( 'text', 'number2_value', __( 'Toinen numero', 'timiwahalahti' ) )
->set_width( 20 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
Field::make( 'text', 'number2_format', __( 'Formaatti', 'timiwahalahti' ) )
->set_width( 10 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
Field::make( 'text', 'number2_label', __( 'Selite', 'timiwahalahti' ) )
->set_width( 45 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
Field::make( 'date', 'number2_updated', __( 'Päivitetty', 'timiwahalahti' ) )
->set_width( 25 )
->set_conditional_logic( array(
array(
'field' => 'template',
'value' => 'numbers',
)
) ),
) ),
) );
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment