acf_field_link::render_field
Create the HTML interface for your field
Метод класса: acf_field_link{}
Хуков нет.
Возвращает
null. Ничего (null).
Использование
$acf_field_link = new acf_field_link(); $acf_field_link->render_field( $field );
- $field(обязательный)
- .
Список изменений
| С версии 3.6 | Введена. |
Код acf_field_link::render_field() acf field link::render field ACF 6.4.2
<?php
public function render_field( $field ) {
// vars
$div = array(
'id' => $field['id'],
'class' => $field['class'] . ' acf-link',
);
// render scripts/styles
acf_enqueue_uploader();
// get link
$link = $this->get_link( $field['value'] );
// classes
if ( $link['url'] ) {
$div['class'] .= ' -value';
}
if ( $link['target'] === '_blank' ) {
$div['class'] .= ' -external';
}
?>
<div <?php echo acf_esc_attrs( $div ); ?>>
<div class="acf-hidden">
<a class="link-node" href="<?php echo esc_url( $link['url'] ); ?>" target="<?php echo esc_attr( $link['target'] ); ?>"><?php echo esc_html( $link['title'] ); ?></a>
<?php foreach ( $link as $k => $v ) : ?>
<?php
acf_hidden_input(
array(
'class' => "input-$k",
'name' => $field['name'] . "[$k]",
'value' => $v,
)
);
?>
<?php endforeach; ?>
</div>
<a href="#" class="button" data-name="add" target=""><?php esc_html_e( 'Select Link', 'acf' ); ?></a>
<div class="link-wrap">
<span class="link-title"><?php echo esc_html( $link['title'] ); ?></span>
<a class="link-url" href="<?php echo esc_url( $link['url'] ); ?>" target="_blank"><?php echo esc_html( $link['url'] ); ?></a>
<i class="acf-icon -link-ext acf-js-tooltip" title="<?php esc_attr_e( 'Opens in a new window/tab', 'acf' ); ?>"></i><a class="acf-icon -pencil -clear acf-js-tooltip" data-name="edit" href="#" title="<?php esc_attr_e( 'Edit', 'acf' ); ?>"></a><a class="acf-icon -cancel -clear acf-js-tooltip" data-name="remove" href="#" title="<?php esc_attr_e( 'Remove', 'acf' ); ?>"></a>
</div>
</div>
<?php
}