it-swarm.com.de

Facebook-Share-Link - kein Javascript

Mit dem folgenden Link können Sie eine Seite auf Twitter teilen:

http://Twitter.com/share

Gibt es eine ähnliche Option für Facebook, für die kein Javascript erforderlich ist?

Ich weiß über http://facebook.com/sharer.php , aber das erfordert, dass ein get - Parameter manuell eingefügt wird (was ich nicht tun werde) oder mit Javascript (was nicht zu meinem passt Situation).

108
Web_Designer

Du könntest benutzen

<a href="https://www.facebook.com/sharer/sharer.php?u=#url" target="_blank">Share</a>

Derzeit gibt es keine Freigabeoption, ohne die aktuelle URL als Parameter zu übergeben. Sie können einen indirekten Weg verwenden, um dies zu erreichen.

  1. Erstellen Sie eine serverseitige Seite zum Beispiel: "/sharer.aspx"
  2. Verknüpfen Sie diese Seite, wann immer Sie die Freigabe-Funktion wünschen.
  3. Rufen Sie in der "sharer.aspx" die verweisende URL ab und leiten Sie den Benutzer zu " https://www.facebook.com/sharer/sharer.php?u= {referer}" um.

Beispiel ASP .Net-Code:

public partial class Sharer : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        var referer = Request.UrlReferrer.ToString();

        if(string.IsNullOrEmpty(referer))
        {
            // some error logic
            return;
        }

        Response.Clear();
        Response.Redirect("https://www.facebook.com/sharer/sharer.php?u=" + HttpUtility.UrlEncode(referer));
        Response.End();
    }
}
152
Medeni Baykal

Ps 2: Wie von Justin hervorgehoben - checkout Der neue Share-Dialog von Facebook . Lässt die Antwort so, wie sie für die Nachwelt ist. Diese Antwort ist veraltet


Kurze Antwort, ja, es gibt eine ähnliche Option für Facebook, für die kein Javascript erforderlich ist (naja, es gibt einige minimale Inline-JS, die nicht obligatorisch sind, siehe Hinweis).

Ps: Der onclick-Teil hilft nur beim Anpassen des Popup-Fensters, ist jedoch nicht erforderlich, damit der Code funktioniert. Ohne ihn funktioniert der Code gut.

Facebook

<a href="https://www.facebook.com/sharer/sharer.php?u=URLENCODED_URL&t=TITLE"
   onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;"
   target="_blank" title="Share on Facebook">
</a>

Twitter

<a href="https://Twitter.com/share?url=URLENCODED_URL&via=Twitter_HANDLE&text=TEXT"
   onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;"
   target="_blank" title="Share on Twitter">
</a>

Google Plus

<a href="https://plus.google.com/share?url=URLENCODED_URL"
   onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=350,width=480');return false;"
   target="_blank" title="Share on Google+">
</a>
114
King'ori Maina

Es ist möglich, JavaScript in Ihren Code aufzunehmen und Benutzer, die keine JavaScript-Benutzer sind, zu unterstützen.

Wenn ein Benutzer auf einen der folgenden Links klickt, ohne dass JavaScript aktiviert ist, wird einfach eine neue Registerkarte geöffnet:

<!-- Remember to change URL_HERE, TITLE_HERE and Twitter_HANDLE_HERE -->
<a href="http://www.facebook.com/sharer/sharer.php?u=URL_HERE&t=TITLE_HERE" target="_blank" class="share-popup">Share on Facebook</a>
<a href="http://www.Twitter.com/intent/tweet?url=URL_HERE&via=Twitter_HANDLE_HERE&text=TITLE_HERE" target="_blank" class="share-popup">Share on Twitter</a>
<a href="http://plus.google.com/share?url=URL_HERE" target="_blank" class="share-popup">Share on Googleplus</a>

Da sie die Klasse share-popup enthalten, können wir sie in jQuery leicht referenzieren und die Fenstergröße ändern, um sie an die Domäne anzupassen, von der aus sie freigegeben wird:

 $ (". share-popup"). click (function () {
 var window_size = "width = 585, height = 511"; 
 var url = this.href; 
 var-Domäne = url.split ("/") [2]; 
 switch (Domäne) {
 case "www.facebook.com": 
 window_size = "width = 585, height = 368"; 
 break; 
 case "www.Twitter.com": 
 window_size = "width = 585, height = 261"; 
 break; 
 case "plus.google.com": 
 window_size = "width = 517, height = 511"; 
 break; 
} 
 window.open (url, '', 'menubar = no, toolbar = no, resizable = yes, scrollbars = yes, '+ window_size); 
 return false; 
}); 

Kein hässliches Inline-JavaScript oder unzählige Änderungen der Fenstergröße. Und es unterstützt auch Nicht-JavaScript-Benutzer.

34
rybo111

Sie können die Option "URL" für die Feed-URL verwenden, wie auf der Seite Feed-Dialog beschrieben:

Sie können einen Feed-Dialog auch aufrufen, indem Sie den Benutzer explizit zum/dialog/feed-Endpunkt leiten:

  https://www.facebook.com/dialog/feed?  
  app_id=123050457758183&
  link=https://developers.facebook.com/docs/reference/dialogs/&
  picture=http://fbrell.com/f8.jpg&
  name=Facebook%20Dialogs&
  caption=Reference%20Documentation&
  description=Using%20Dialogs%20to%20interact%20with%20users.&
  redirect_uri=http://www.example.com/response`

Sieht aus, als würden sie nirgendwo in ihren Dokumenten "Teilen" erwähnen. Dies wurde durch das Konzept des Hinzufügens zu Ihrem Feed ersetzt.

7
Jordan Reiter

Viele dieser Antworten treffen nicht mehr zu, also hier meine:

Verwenden Sie den auf der Facebook Dev Page beschriebenen Share-Dialog.

Beispiel:

https://www.facebook.com/dialog/share?
  app_id=<your_app_id>
  &display=popup
  &href=https%3A%2F%2Fdevelopers.facebook.com%2Fdocs%2F
  &redirect_uri=https%3A%2F%2Fdevelopers.facebook.com%2Ftools%2Fexplorer

Sie müssen jedoch Ihre registrierte app_id, die href und einen Weiterleitungsuri eingeben.

6
Justin Skiles

Bitte besuchen Sie die Website und Sie erhalten Links zu Facebook, Google + und Twitter http://www.sharelinkgenerator.com/

4
Mazhar Iqbal
3
DMCS

Ich weiß, es ist ein alter Thread, aber ich musste so etwas für ein Projekt tun und wollte die 2019-Lösung teilen.

Die neue dialog -API kann Parameter abrufen und ohne Javascript verwendet werden.

Die Parameter sind:

  • app_id (Erforderlich)
  • href Die URL der Seite, die Sie freigeben möchten, verwendet die aktuelle URL, falls noch keine verstrichen ist.
  • hashtag muss das Symbol # haben, zum Beispiel #amsterdam
  • quote Text, der mit dem Link geteilt werden soll

Sie können eine HREF ohne Javascript erstellen.

<a href="https://www.facebook.com/dialog/feed?&app_id=APP_ID&link=URI&display=popup&quote=TEXT&hashtag=#HASHTAG" target="_blank">Share</a>

Eine zu berücksichtigende Sache ist, dass Facebook Open Graph verwendet. Wenn Ihre OG-Tags also nicht richtig gesetzt sind, erhalten Sie möglicherweise nicht die gewünschten Ergebnisse.

2
Shahar

Ein Zusatz zu @ rybo111s Lösung ist, was ein LinkedIn-Anteil sein würde:

<a href="http://www.linkedin.com/shareArticle?mini=true&url={articleUrl}&title={articleTitle}&summary={articleSummary}&source={articleSource}" target="_blank" class="share-popup">Share on LinkedIn</a>

und füge dies deinem Javascript hinzu:

case "www.linkedin.com":
    window_size = "width=570,height=494";
    break;

Wie in der LinkedIn-Dokumentation beschrieben: https://developer.linkedin.com/docs/share-on-linkedin (Siehe Abschnitt "Benutzerdefinierte URLs").

Für alle, die daran interessiert sind, habe ich dies in einer Rails-App mit einem LinkedIn-Logo verwendet. Hier ist mein Code, falls er helfen könnte:

<%= link_to image_tag('linkedin.png', size: "50x50"), "http://www.linkedin.com/shareArticle?mini=true&url=#{job_url(@job)}&title=#{full_title(@job.title).html_safe}&summary=#{strip_tags(@job.description)}&source=SOURCE_URL", class: "share-popup" %>
2
Kyle Carlson

Für diejenigen, die Javascript verwenden möchten, die Facebook-Javascript-Bibliothek jedoch nicht verwenden möchten:

<a id="shareFB" href="https://www.facebook.com/sharer/sharer.php?u=URLENCODED_URL&t=TITLE"
   onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;"   target="_blank" title="Share on Facebook">Share on Facebook</a>
<script type="text/javascript">document.getElementById("shareFB").setAttribute("href", "https://www.facebook.com/sharer/sharer.php?u=" + document.URL);</script>

Funktioniert auch, wenn Javascript deaktiviert ist. Es wird jedoch ein Popup-Fenster mit einer Vorschau angezeigt, wenn JavaScript aktiviert ist. 

Speichert einen Klick mit der Nadel, ohne dass Facebook-Js-Spyware verwendet wird :)

2

Probieren Sie diese Linktypen aus, die für mich tatsächlich funktionieren.

https://www.facebook.com/sharer.php?u=YOUR_URL_HERE
https://Twitter.com/intent/tweet?url=YOUR_URL_HERE
https://plus.google.com/share?url=YOUR_URL_HERE
https://www.linkedin.com/shareArticle?mini=true&url=YOUR_URL_HERE
2
Asitha Yomal

So teilen Sie Inhalte: https://developers.facebook.com/docs/share/

Sie müssen wählen, ob Sie die veraltete Funktion ohne JS verwenden möchten, jeden Tag überprüfen oder der Art und Weise folgen, wie Sie JS verwenden, und Spaß haben. 

1
Sándor Tóth

Falls Sie in mehr Foren mitmachen möchten, finden Sie hier die Lösung .. https://github.com/bradvin/social-share-urls

0
Ahmad Hassan