公開フィルターを構成して、ユーザーがサイトのコンテンツを作成日(できれば日付ピッカーを使用)でフィルターできるようにするにはどうすればよいですか?
Content:Authored onをフィルターとして使用してみましたが、テキストフィールドに日付を入力してyyyy-mm-dd hh:mm:ss形式。これにより、ユーザーが日付を入力することが難しくなり、エラーが発生しやすくなります。
Drupal 8とDrupal 7 with Views 7.x-3)の違いは何ですか?
Date Popup モジュールを使用できます。
ネイティブHTML 5日付ポップアップウィジェットをビューフィルターのすべての日付フィールドに追加します。
公開されたフィルターで日付を選択するときにテキストフィールドではなく日付タイプのフォーム要素を使用する がまだ進行中であるため。
数日前にリリースされた新しいパッチがあり、プロジェクトでテストしたところ、問題なく動作しました。ここに問題があります:
公開されたフィルターで日付を選択するときに、テキストフィールドではなく日付タイプのフォーム要素を使用
問題/動機
日時公開フィルターを追加するとき、単純に日付を選択することはできません。UXが非常に悪い日付を手動で入力する必要があります。
そして パッチは65番です
そのページのjquery日付ピッカーを依存関係として追加します。 your_theme.libraries.yml
date-picker:
js:
script/site-datepicker.js : {}
dependencies:
- core/jquery
- core/jquery.ui.datepicker
site-datepicker.js
Drupal.behaviors.customDatepicker = {
attach: function (context, settings) {
jQuery(function () {
jQuery("#datepicker").datepicker({
dateFormat: "dd-mm-yy",
altField: "input[data-drupal-selector=edit-created]",
altFormat: "yy/mm/dd 23:59:59"
});
});
}
};
views-exposed-form-views-block-name。html.twig
{% if q is not empty %}
{#
This ensures that, if clean URLs are off, the 'q' is added first,
as a hidden form element, so that it shows up first in the POST URL.
#}
{{ q }}
{% endif %}
<input id="datepicker" type="text">
<input data-drupal-selector="edit-created" data-msg-maxlength="This field field has a maximum length of 128." name="created" size="30" maxlength="128" aria-invalid="false" type="hidden">
{{ form|without('created') }}
Better Exposed Filters モジュールは、日付ポップアップを含む日付タイプのフィールドと統合されます。このモジュールを使用して、日付ポップアップ付きの公開フィルターを簡単に追加できます。
現時点ではベータ版ですが、使用できます。