it-swarm.com.de

Gutenberg RichText

Ich verwende die RichText-API für einen benutzerdefinierten Block:

<RichText
  tagName="a"
  className="button"
  placeholder={ __( 'Button text...' ) }
  value={ buttonText }
  onChange={ ( value ) => setAttributes( { buttonText: value } ) }
 />

Ich verwende a als Tag-Namen, weil ich möchte, dass das Element ein Link ist, aber ich weiß nicht, wie ich eine URL hinzufügen soll. Ist es möglich, ein href-Attribut hinzuzufügen? Das Hinzufügen von href="some URL" zu RichText funktioniert nicht. Ich habe die Dokumentation durchgesehen und gegoogelt, aber keine Anleitung gefunden.

1
CyberJ

Bitte fügen Sie den vollständigen Code ein, der dem offiziellen Gutenberg-Button-Block entspricht. Sie benötigen zusätzliche Blockattribute, um die Schaltflächenverknüpfung, Text -

https://github.com/WordPress/gutenberg/blob/master/packages/block-library/src/button/index.js

<RichText.Content
    tagName="a"
    className={ linkClass }
    href={ url }
    title={ title }
    style={ buttonStyle }
    value={ text }
/>

Wie Sie sehen, gibt es eine URL, Title & Text Attribute.

url: {
        type: 'string',
        source: 'attribute',
        selector: 'a',
        attribute: 'href',
    },
    title: {
        type: 'string',
        source: 'attribute',
        selector: 'a',
        attribute: 'title',
    },
    text: {
        type: 'array',
        source: 'children',
        selector: 'a',
    },
1