ประกาศการดําเนินการ

การดำเนินการใน schema.org แสดงถึงคำกริยาหรือกิจกรรมที่ทำกับข้อมูลที่มีโครงสร้างชิ้นหนึ่งๆ ได้ ระบบรองรับการดำเนินการหลายประเภท และสามารถกำหนดได้ด้วยข้อมูลที่มีโครงสร้างที่คล้ายกัน

การดำเนินการที่ต้องการ

หากคุณเพิ่มมาร์กอัปลงในเนื้อหาด้วยเอนทิตี schema.org คุณจะเพิ่มการดำเนินการ Go-To ของเอนทิตีดังกล่าวได้ เช่น หากต้องการทำให้เอนทิตี EmailMessage มีลิงก์ไปที่ ViewAction ก็ให้ป้อนข้อมูลพร็อพเพอร์ตี้ potentialAction ของอีเมลตามตัวอย่างต่อไปนี้

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ViewAction",
    "target": "https://watch-movies.com/watch?movieId=abc123",
    "name": "Watch movie"
  },
  "description": "Watch the 'Avengers' movie online"
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
    <link itemprop="target" href="https://watch-movies.com/watch?movieId=abc123"/>
    <meta itemprop="name" content="Watch movie"/>
  </div>
  <meta itemprop="description" content="Watch the 'Avengers' movie online"/>
</div>

โปรดทราบว่าโปรแกรมรับส่งอีเมลอื่นที่ไม่รองรับสคีมาในอีเมลจะละเว้นมาร์กอัปข้างต้นโดยอัตโนมัติ

การทำ Deep Link สำหรับอุปกรณ์เคลื่อนที่

การดำเนินการ "ไปยัง" ยังลิงก์ไปยังเนื้อหาโดยตรงในแอปที่มากับอุปกรณ์เคลื่อนที่ Android และ iOS วิธีทำ Deep Link ไปยัง ของแอป ให้ใส่ URL ของ target เพิ่มเติมที่เข้ารหัสด้วยรูปแบบ android-app:// และ ios-app:// ดังที่แสดงด้านล่าง

JSON-LD

"target": [
  “<web url>”,
  “android-app://<android package name>/<scheme>/<host>/<path+query>”,
  “ios-app://<App store ID>/<scheme>/<host><path+query>"
]

Microdata

<link itemprop="target" href="<web url>"/>
<link itemprop="target" href="android-app://<android package name>/<scheme>/<host>/<path+query>”/>
<link itemprop="target" href="ios-app://<App store ID>/<scheme>/<host>/<path+query>"/>

การขยายตัวอย่าง EmailMessage ก่อนหน้า:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "name": "Watch movie",
  ... information about the movie ...
  "potentialAction": {
    "@type": "ViewAction",
    "target": [
      "https://watch-movies.com/watch?movieId=abc123",
      "android-app://com.watchmovies.app/http/watch-movies.com/watch?movieId=abc123",
      "ios-app://12345/movieapp/watch-movies.com/watch?movieId=abc123"
    ]
  }
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <meta itemprop="name" content="Watch movie"/>
  ... information about the movie ...
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
    <meta itemprop="target" content="https://watch-movies.com/watch?movieId=abc123"/>
    <meta itemprop="target" content="android-app://com.watchmovies.android/http/watch-movies.com/watch?movieId=abc123"/>
    <meta itemprop="target" content="ios://12345/movieapp/watch-movies.com/watch?movieId=abc123"/>
 </div>
</div>

หากผู้ใช้ไม่มีแอปของคุณ การดำเนินการนี้จะนำผู้ใช้ไปยัง URL ของเว็บที่คุณระบุ

การกระทำในแอป

การดำเนินการในแอปจะได้รับการจัดการภายใน Gmail โดยไม่ส่งผู้ใช้ไปยังเว็บไซต์อื่น การดำเนินการในแอปมีการประกาศไว้ เช่น Go-To Actions แต่มีข้อมูลเพิ่มเติมที่ทำให้ User Agent (เช่น Gmail) จัดการการดำเนินการในหน้าได้อย่างง่ายดาย

คุณต้องประกาศ HttpActionHandler สำหรับการดำเนินการที่มีการกำหนดค่าที่เหมาะสมแทนการประกาศการดำเนินการด้วย target

ตัวอย่างเช่น คุณสามารถเพิ่มปุ่มยืนยันในอีเมลที่กำหนดให้ผู้ใช้ต้องอนุมัติ ยืนยัน และรับทราบข้อมูลบางอย่าง เมื่อผู้ใช้คลิกปุ่มดังกล่าว Google จะออกคำขอ HTTP ไปยังบริการของคุณ ซึ่งจะบันทึกการยืนยัน โต้ตอบกับ ConfirmAction ได้เพียงครั้งเดียวเท่านั้น

ตัวอย่างต่อไปนี้เพิ่มปุ่ม ConfirmAction ลงในอีเมลเกี่ยวกับรายงานค่าใช้จ่าย

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ConfirmAction",
    "name": "Approve Expense",
    "handler": {
      "@type": "HttpActionHandler",
      "url": "https://myexpenses.com/approve?expenseId=abc123"
    }
  },
  "description": "Approval request for John's $10.13 expense for office supplies"
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
    <meta itemprop="name" content="Approve Expense"/>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="https://myexpenses.com/approve?expenseId=abc123"/>
    </div>
  </div>
  <meta itemprop="description" content="Approval request for John's $10.13 expense for office supplies"/>
</div>

การดำเนินการที่ใกล้หมดอายุ

ในหลายกรณี การดำเนินการจะมีความเกี่ยวข้องในระยะเวลาที่จำกัดเท่านั้น การดำเนินการที่เชื่อมโยงกับเอนทิตีที่มีวันที่ที่ทราบ เช่น การจองการเดินทาง จะหมดอายุโดยอัตโนมัติ Gmail ไม่แสดงการดำเนินการหลังจากผ่านการเดินทางไปแล้ว

นอกจากนี้ คุณยังเพิ่มวันที่หมดอายุลงในการดำเนินการได้อย่างชัดเจน เช่น การดําเนินการตัดคูปองหรือบันทึกรหัสข้อเสนออาจใช้ได้ในระยะเวลาจํากัดเท่านั้น หากต้องการกำหนดกรอบเวลาที่จะแสดงการดำเนินการ ให้ตั้งค่าพร็อพเพอร์ตี้ startTime และ endTime ของการดำเนินการ ดังนี้

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ConfirmAction",
    "name": "Save coupon",
    "handler":  {
       "@type": "HttpActionHandler",
       "url": "https://my-coupons.com/approve?couponId=abc123"
    },
    "startTime": "2015-06-01T12:00:00Z",
    "endTime": "2015-06-05T12:00:00Z"
  }
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
    <meta itemprop="name" content="Save coupon"/>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="https://my-coupons.com/approve?couponId=abc123"/>
    </div>
    <meta itemprop="startTime" content="2015-06-01T12:00:00Z" />
    <meta itemprop="endTime" content="2015-06-05T12:00:00Z" />
  </div>
</div>

อ่านเพิ่มเติม

ดูรายละเอียดเพิ่มเติมเกี่ยวกับการดำเนินการได้ที่