PluginProbe
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot / 3.5.3
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot v3.5.3
4.9.4 4.9.3 4.9.2 4.9.1 4.9.0 4.8.2 4.8.1 4.8.0 4.7.0 4.6.2 4.6.1 4.6.0 4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 4.5.1 4.5.0 4.4.1 4.4.0 3.3.4 3.4.0 3.4.1 3.4.2 All 202 releases
betterdocs / includes / Editors / Elementor / Widget / Breadcrumbs.php

Breadcrumbs.php in BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot 3.5.3, at includes/Editors/Elementor/Widget/Breadcrumbs.php

153 lines 4.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace WPDeveloper\BetterDocs\Editors\Elementor\Widget;
3
4 if ( ! defined( 'ABSPATH' ) ) {
5 exit; // Exit if accessed directly
6 }
7
8 use Elementor\Controls_Manager;
9 use Elementor\Group_Control_Typography;
10 use WPDeveloper\BetterDocs\Editors\Elementor\BaseWidget;
11
12 class Breadcrumbs extends BaseWidget {
13
14 public function get_name() {
15 return 'betterdocs-breadcrumb';
16 }
17
18 public function get_title() {
19 return __( 'Doc Breadcrumbs', 'betterdocs' );
20 }
21
22 public function get_icon() {
23 return 'betterdocs-icon-Breadcrumbs';
24 }
25
26 public function get_keywords() {
27 return ['betterdocs-elements', 'breadcrumbs', 'internal links', 'docs', 'betterdocs'];
28 }
29
30 public function get_custom_help_url() {
31 return 'https://betterdocs.co/docs/single-doc-in-elementor';
32 }
33
34 public function get_categories() {
35 return ['betterdocs-elements', 'betterdocs-elements-single', 'docs-archive'];
36 }
37
38 public function get_style_depends() {
39 return ['betterdocs-breadcrumb'];
40 }
41
42 protected function register_controls() {
43
44 $this->start_controls_section(
45 'section_betterdocs_breadcrumbs_style',
46 [
47 'label' => __( 'Style', 'betterdocs' ),
48 'tab' => Controls_Manager::TAB_STYLE
49 ]
50 );
51
52 $this->add_control(
53 'link_color',
54 [
55 'label' => __( 'Text Color', 'betterdocs' ),
56 'type' => Controls_Manager::COLOR,
57 'selectors' => [
58 '{{WRAPPER}} .betterdocs-breadcrumb .betterdocs-breadcrumb-item > a' => 'color: {{VALUE}}'
59 ]
60 ]
61 );
62
63 $this->add_group_control(
64 Group_Control_Typography::get_type(),
65 [
66 'name' => 'text_typography',
67 'selector' => '{{WRAPPER}} .betterdocs-breadcrumb .betterdocs-breadcrumb-item a,{{WRAPPER}} .betterdocs-breadcrumb .betterdocs-breadcrumb-item span'
68 ]
69 );
70
71 $this->add_responsive_control(
72 'alignment',
73 [
74 'label' => __( 'Alignment', 'betterdocs' ),
75 'type' => Controls_Manager::CHOOSE,
76 'options' => [
77 'flex-start' => [
78 'title' => __( 'Left', 'betterdocs' ),
79 'icon' => 'eicon-text-align-left'
80 ],
81 'center' => [
82 'title' => __( 'Center', 'betterdocs' ),
83 'icon' => 'eicon-text-align-center'
84 ],
85 'flex-end' => [
86 'title' => __( 'Right', 'betterdocs' ),
87 'icon' => 'eicon-text-align-right'
88 ]
89 ],
90 'selectors' => [
91 '{{WRAPPER}} .betterdocs-breadcrumb .betterdocs-breadcrumb-list' => 'justify-content: {{VALUE}}'
92 ]
93 ]
94 );
95
96 $this->end_controls_section();
97
98 $this->icon_style();
99 }
100
101 public function icon_style() {
102 /**
103 * ----------------------------------------------------------
104 * Section: Icon Style
105 * ----------------------------------------------------------
106 */
107 $this->start_controls_section(
108 'section_article_settings',
109 [
110 'label' => __( 'Icon', 'betterdocs' ),
111 'tab' => Controls_Manager::TAB_STYLE
112 ]
113 );
114
115 $this->add_control(
116 'breadcrumbs_icon_color',
117 [
118 'label' => esc_html__( 'Color', 'betterdocs' ),
119 'type' => Controls_Manager::COLOR,
120 'selectors' => [
121 '{{WRAPPER}} .betterdocs-breadcrumb .breadcrumb-delimiter' => 'color: {{VALUE}};'
122 ]
123 ]
124 );
125
126 $this->add_responsive_control(
127 'breadcrumbs_icon_size',
128 [
129 'label' => __( 'Size', 'betterdocs' ),
130 'type' => Controls_Manager::SLIDER,
131 'size_units' => ['px', '%', 'em'],
132 'range' => [
133 '%' => [
134 'max' => 100,
135 'step' => 1
136 ]
137 ],
138 'selectors' => [
139 '{{WRAPPER}} .betterdocs-breadcrumb .breadcrumb-delimiter .breadcrumb-delimiter-icon' => 'width: {{SIZE}}{{UNIT}};height: {{SIZE}}{{UNIT}};'
140 ]
141 ]
142 );
143
144 $this->end_controls_section(); # end of 'Column Settings'
145 }
146
147 protected function render_callback() {
148 $this->views( 'widgets/breadcrumbs' );
149 }
150
151 public function render_plain_content() {}
152 }
153